Speichern von Daten

Startseite Foren Deutsches LiveCode-Forum Speichern von Daten

Schlagwörter: 

Ansicht von 35 Antwort-Themen
  • Autor
    Beiträge
    • #6483
      YoloBolo
      Teilnehmer

        Hallo zusammen,

        ich habe mich hier im Forum schon mal zum Thema “speichern von Daten” informiert, verstehe aber jetzt nicht genau wie das funktioniert. Deswegen wollte ich an dieser Stelle nochmal fragen, ob mir einer erklären kann, wie das mit dem Speichern von Daten geht. Einmal möchte ich Daten Lokal auf dem Handy speichern und einmal auf einem Server.
        Für jede Hilfe bin ich dankbar.

        LG Max

      • #6486
        Klaus Major
        Administrator

          Hi Roger,

          und hast Du auch hier geschaut?
          Speichern
          😎

          Bitte gerne nachfragen, falls das nicht ganz klar sein sollte.

          Daten auf einem Server können etweder über FTP/FTPS geschickt und/oder
          per HTTP/HTTPS gePOSTed werden.

          Dazu ist dann aber ein “Serverseitiges” Skript (PHP oder Livecode Server etc.) erforderlich.
          Schau mal unter POST im Dictionary nach.

          Gruß

          Klaus

        • #6488
          YoloBolo
          Teilnehmer

            Danke, werde es morgen mal ausprobieren.
            Gibt es denn Vorlagen, für das Server Skript

            LG Max

          • #6496
            Klaus Major
            Administrator

              Hallo Max,

              ein Beispielskript für Livecode Server findest Du hier:
              File Upload LC Server

              Wichtig: LC Server muss dafür natürlich auf dem Server installiert sein, was aber nicht der Standard ist. Dein Provider, oder der Server, den Du später mit LC ansprechen möchtest, könnte also LC Server nicht unterstützen, sondern nur den Standard PHP o.ä.

              Im Netz gibt es jede Menge Beispiele für PHP, da musst Du mal goorgeln. 🙂

              Gruß

              Klaus

            • #6522
              YoloBolo
              Teilnehmer

                Ich bins nochmal,

                bei mir klappt speichern und einlesen nicht, kann ein bitte mal schreiben, wie das auf dem Handy funktioniert.

                LG Max

              • #6529
                Klaus Major
                Administrator

                  Bitte zeig doch mal, was Du bisher versucht hast.
                  In anderen Worten, poste mal Dein entsprechendes Skript.

                • #6538
                  YoloBolo
                  Teilnehmer
                    global tZielPfad
                    
                    on preOpenStack
                       set the fullscreenmode of me to "Letterbox"
                    end preOpenStack
                    
                    on openstack
                       go to cd"Home"
                       if the environment = "mobile" then
                          put specialfolderpath("documents") into tZielPfad
                       else
                          put specialfolderpath("preferences") into tZielPfad
                       end if
                       put "/Anlagen/Test.txt" after tZielPfad
                       dateneinlesen
                    end openstack
                    
                    on mouseup
                       if "button" is in the target then
                          put the name of the target into btntitel
                          put word 2 of btntitel into action
                          delete the first char of action
                          delete the last char of action
                          if action = "Daten speichern"then
                             go to cd"Test"
                          else if action = "Speichern" then
                             put fld "Eingabe" into worte
                             put empty into fld "Eingabe"
                             put worte &return after fld "Speicherort"
                             put worte into url("file:" & tZielPfad)
                          end if
                       end if
                    end mouseup
                    
                    on dateneinlesen
                       if there is a file tZielPfad then
                          put url("file:" & tZielPfad) into worte
                          put worte into fld "Speicherort" of cd "Test"
                       end if
                    end dateneinlesen

                    Habe das nochmal in einem Testprojekt probiert

                  • #6542
                    Klaus Major
                    Administrator

                      Hallo Max,

                      sieht eigentlich OK aus, aber LC erstellt nicht automatisch benötigte UNTERORDNER!
                      Versuche es mal so:

                      ...
                      on openstack
                         go to cd"Home"
                         if the environment = "mobile" then
                            put specialfolderpath("documents") into tZielPfad
                         else
                            put specialfolderpath("preferences") into tZielPfad
                         end if
                      
                         ## Prüfen, ob Ordner vorhanden und wenn nicht, dann erstellen!
                         if there is not a folder tZielPfad then
                            create folder tZielPfad
                         end if
                         put "/Anlagen" after tZielPfad
                         put "/Anlagen/Test.txt" after tZielPfad
                         dateneinlesen
                      end openstack
                      ...

                      Gruß

                      Klaus

                    • #6546
                      YoloBolo
                      Teilnehmer

                        Wieso 2 mal “/Anlagen”

                      • #6548
                        Klaus Major
                        Administrator

                          Sorry, falsche Reihenfolge:

                          ...
                             put "/Anlagen" after tZielPfad
                             ## Prüfen, ob Ordner vorhanden und wenn nicht, dann erstellen!
                             if there is not a folder tZielPfad then
                                create folder tZielPfad
                             end if
                             put "/Anlagen/Test.txt" after tZielPfad
                             dateneinlesen
                          end openstack
                        • #6554
                          YoloBolo
                          Teilnehmer

                            Klappt nicht

                          • #6556
                            Klaus Major
                            Administrator

                              Gibt es eine Fehlermeldung o.ä.?

                              Check bitte mal “the result” mach der Schreiboperation.
                              Das könnte einen Hinweis geben:

                              ...
                                      put worte &return after fld "Speicherort"
                                      put worte into url("file:" & tZielPfad)
                                      if the result <> EMPTY then
                                        answer "Fehler beim Schreiben der Datei!" & CR & the rsult
                                      end if
                                    end if
                                 end if
                              end mouseup
                            • #6558
                              Klaus Major
                              Administrator

                                Flüchtigkeitsfehler meinerseits, sorry,

                                answer …. & the RESULT

                              • #6560
                                Klaus Major
                                Administrator

                                  Noch ein Hinweis, das hier geht auch einfacher:

                                  ...
                                    if "button" is in the target then
                                       ## put the name of the target into btntitel
                                       ## put word 2 of btntitel into action
                                       ## delete the first char of action
                                       ## delete the last char of action
                                       ## All das ist unnötig wenn Du "the short name of ..." abfragst!
                                       put the SHORT name of the target into action
                                  ...
                                • #6566
                                  YoloBolo
                                  Teilnehmer

                                    Hast recht, gibt den Fehler aus

                                  • #6571
                                    Klaus Major
                                    Administrator

                                      Klar hab ich recht! 😎
                                      Aber was ist nun, klappt es oder nicht?

                                    • #6573
                                      YoloBolo
                                      Teilnehmer

                                        Der git, Fehler beim schreiben der Datei…….,aus, hab den Code so übernommen.
                                        Oder was meinst du

                                      • #6575
                                        Klaus Major
                                        Administrator

                                          Ich meine, klappt das nun mit dem Speichern? Darum geht es hier ja schliesslich.
                                          Und falls Du eine Fehlermeldung bekommst mit dem Skript, was besagt sie GENAU?

                                          Und dann postest Du bitte noch einmal das ganze Skript hier, danke!

                                        • #6577
                                          YoloBolo
                                          Teilnehmer

                                            Ok, hab dich falsch verstanden, teste das dann morgen, aber schonmal danke

                                          • #6579
                                            YoloBolo
                                            Teilnehmer

                                              Was anderes, kann man auch .txt Dokumente mittels Skript erstellen und anwenden

                                            • #6581
                                              Klaus Major
                                              Administrator

                                                Das versuchen wir hier doch seit geraumer Zeit!
                                                Aber was meinst du mit “anwenden”?

                                              • #6583
                                                YoloBolo
                                                Teilnehmer

                                                  Nein, das was ich hjer zuerst gefragt habe, war eine zuvor erstellte Textdatei, die beschrieben wird und dann habe ich gefragt, ob man eine neue Textdatei erstellen kann, mittels skript, und so wie wir es gerade versuchen anwenden kann, weißt du was ich meine

                                                • #6585
                                                  Klaus Major
                                                  Administrator

                                                    Nein, das was ich hjer zuerst gefragt habe, war eine zuvor erstellte Textdatei

                                                    Diese Datei war schon voher da? Das wäre mir neu.
                                                    Aber egal, wenn wir irgend welchen Text in eine Datei mit der Endung .txt schreiben haben wir genau das gemacht. Ob die Datei nun vorher vorhanden war oder nicht. Das bedeutet “eine .txt Datei per Skript erstellen”.

                                                    …ob man eine neue Textdatei erstellen kann, mittels skript, und so wie wir es gerade versuchen anwenden kann

                                                    Nein, ich versteh kein Wort!? Was und wie “anwenden”?
                                                    Drück Dich doch bitte verständlich aus, der Satz oben ergibt so keinen Sinn.
                                                    Lies ihn dir doch selber mal laut vor…

                                                  • #6587
                                                    YoloBolo
                                                    Teilnehmer

                                                      1. Man hat im Ordner”Anlagen” eine Textdatei mit dem Namen “Test” und beschreiben und einlesen kann
                                                      2. Man will eine Textdatei mit dem Namen “Test2” im Ordner “Anlagen” erstellen, zum Beispiel hat man eine App, wo man in einem Label den namen “Test2” eingibt und dann auf einen btn klickt wird die Liste, also die Textdatei im Ordner “Anlagen” erstellt und man was abspeichern kann….. verständlich?

                                                    • #6589
                                                      Klaus Major
                                                      Administrator

                                                        1. Man hat im Ordner”Anlagen” eine Textdatei mit dem Namen “Test” und beschreiben und einlesen kann

                                                        OK, wie gesagt, das war wirklich nicht ersichtlich, daß die Datei schon vorhanden ist.
                                                        Besonders, da Du ja noch überprüfst, ob die Datei vorhanden ist -> if there is a file…

                                                        wenn wir irgend welchen Text in eine Datei mit der Endung .txt schreiben, haben wir genau das gemacht. Ob die Datei nun vorher vorhanden war oder nicht. Das bedeutet “eine .txt Datei per Skript erstellen”.

                                                        Beantwortet das nicht Deine zweite Frage?
                                                        Falls nicht, was genau ist daran unklar?

                                                      • #6593
                                                        YoloBolo
                                                        Teilnehmer

                                                          Also ich meinte, etwas in eine Datei, hier Testdatei, schreiben, falls diese nicht vorhanden ist wird die erstellt, das meinte ich.

                                                        • #6595
                                                          YoloBolo
                                                          Teilnehmer

                                                            Und das mit dem speichern in der Datei funktioniert nicht

                                                          • #6597
                                                            Klaus Major
                                                            Administrator

                                                              Welcher Teil hiervon ist unklar?

                                                              Aber egal, wenn wir irgend welchen Text in eine Datei mit der Endung .txt schreiben haben wir genau das gemacht. Ob die Datei nun vorher vorhanden war oder nicht. Das bedeutet “eine .txt Datei per Skript erstellen”.

                                                            • #6599
                                                              YoloBolo
                                                              Teilnehmer

                                                                Eigentlich alles, ich wollte nur wissen, ob das soviel heißt, wie, dass man dann die Datei, die “fehlt” erstellt. Wenn das mit dem speichern, aber eh nicht klappt hilft das halt nicht
                                                                Aber Danke

                                                              • #6601
                                                                Klaus Major
                                                                Administrator

                                                                  Und das mit dem speichern in der Datei funktioniert nicht

                                                                  Was genau klappt nicht? Gibt es eine Fehlermeldung? Was sagt “the result”?
                                                                  Warum postest Du nicht wieder Dein Skript hier, worum ich Dich gebeten hatte?

                                                                  Du machst es einem wirklich nicht leicht, alles muss man Dir aus der Nase ziehen.
                                                                  Du musst auch schon ein wenig mitarbeiten!

                                                                • #6603
                                                                  YoloBolo
                                                                  Teilnehmer
                                                                    global tZielPfad
                                                                    
                                                                    on preOpenStack
                                                                       set the fullscreenmode of me to "Letterbox"
                                                                    end preOpenStack
                                                                    
                                                                    on openstack
                                                                       go to cd"Home"
                                                                       if the environment = "mobile" then
                                                                          put specialfolderpath("documents") into tZielPfad
                                                                       else
                                                                          put specialfolderpath("preferences") into tZielPfad
                                                                       end if
                                                                       
                                                                       put "/Anlagen" after tZielPfad
                                                                       ## Prüfen, ob Ordner vorhanden und wenn nicht, dann erstellen!
                                                                       if there is not a folder tZielPfad then
                                                                          create folder tZielPfad
                                                                       end if
                                                                       put "/Anlagen/Test.txt" after tZielPfad
                                                                       dateneinlesen
                                                                    end openstack
                                                                    
                                                                    on mouseup
                                                                       if "button" is in the target then
                                                                          put the SHORT name of the target into action
                                                                          if action = "Daten speichern"then
                                                                             go to cd"Test"
                                                                          else if action = "Speichern" then
                                                                             put fld "Eingabe" into worte
                                                                             put empty into fld "Eingabe"
                                                                             put worte &return after fld "Speicherort"
                                                                             put worte into url("file:" & tZielPfad)
                                                                             if the result <> EMPTY then
                                                                                answer "Fehler beim Schreiben der Datei!" & CR & the result
                                                                             end if
                                                                          end if
                                                                       end if
                                                                    end mouseup
                                                                    
                                                                    on dateneinlesen
                                                                       if there is a file tZielPfad then
                                                                          put url("file:" & tZielPfad) into worte
                                                                          put worte into fld "Speicherort" of cd "Test"
                                                                       end if
                                                                    end dateneinlesen
                                                                    

                                                                    Meldung:
                                                                    “Fehler beim Schreiben der Datei!
                                                                    cant open file”

                                                                  • #6605
                                                                    Klaus Major
                                                                    Administrator

                                                                      OK, das ist dann wohl mein Fehler, den Du kopiert hast!

                                                                      ...
                                                                         put "/Anlagen" after tZielPfad
                                                                         ## Prüfen, ob Ordner vorhanden und wenn nicht, dann erstellen!
                                                                         if there is not a folder tZielPfad then
                                                                            create folder tZielPfad
                                                                         end if
                                                                         ## put "/Anlagen/Test.txt" after tZielPfad
                                                                         put "/Test.txt" after tZielPfad
                                                                      ...

                                                                      So sollte es funktionieren.

                                                                    • #6607
                                                                      YoloBolo
                                                                      Teilnehmer

                                                                        Ja,/Anlagen/AnlagenTTest.txt
                                                                        Das hast du doch eben so geschrieben, also den Code

                                                                      • #6609
                                                                        Klaus Major
                                                                        Administrator

                                                                          Sag ich doch!

                                                                          Klappt es denn nun?

                                                                        • #6632
                                                                          YoloBolo
                                                                          Teilnehmer

                                                                            Klappt jetzt.
                                                                            Danke

                                                                          • #6638
                                                                            Klaus Major
                                                                            Administrator

                                                                              HALLELUJAH! 🙂

                                                                          Ansicht von 35 Antwort-Themen
                                                                          • Du musst angemeldet sein, um auf dieses Thema antworten zu können.