variablen speichern

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • variablen speichern

    Hallo, wie kann ich aus einem Formular input name=xx[]
    alle werte in eine txt speichern?


    gespeichert wird mit:


    PHP Code:
    fWrite($handlermt_rand(19999) . "|" "nein" "|" $namex "|" $montag "|" $montagvon "|" $montagbis "|" $dienstag "|" $dienstagvon "|" $dienstagbis "|" $mittwoch "|" $mittwochvon "|" $mittwochbis "|" $donnerstag  "|" $donnerstagvon "|" $donnerstagbis "|" $freitag "|" $freitagvon "|" $freitagbis "|" $samstag "|" $samstagvon "|" $samstagbis "|" $sonntag "|" $sonntagvon "|" $sonntagbis "|\n"); 
    Der $namex kommt von foreach list() !


    die input erweitern sich natürlch nach anzahl der Mitarbeiter!


    vielen Dank für Eure Hilfe!

  • #2
    speicher sie als JSON mit json_encode() in der Datei.

    Comment


    • #3
      Beim echo kommt das: ["10:00","12:00","14:00"] ["11:00","13:00","15:00"]

      Daten stimmen, nur wie verarbeite ich soetwas im foreach?

      PHP Code:
      $montagvon json_encode($montagvon);
      echo(
      $montagvon);
      $montagbis json_encode($montagbis);
      echo(
      $montagbis); 
      Mit json hab ich leider noch garkeine Erfahrung.
      Last edited by Andreas-LE; 07-12-2020, 10:41.

      Comment


      • #4
        Du kannst mit json_encode() und json_decode() einfach zwischen den Daten als String und als Array hin und her wechseln, also wenn du es in der Datei speichern willst nimmst du json_encode, und wenn du das aus der Datei holst json_decode.

        Comment


        • #5
          Daten speichere ich wie folgt:
          input name="montagvon[]"

          Speichern:
          $montagvon = json_encode($montagvon);


          PHP Code:
          foreach ($mitarbeiter as $zaehler => $element) {
                    list(
          $id$name$geschlecht$email$passwort$rolle$status$login$strasse$plz$ort) = explode("|"$element);$handler fOpen("../$planordner$jahrsystem/$woche.txt""a+");
                                  
          fWrite($handlermt_rand(19999) . "|" "nein" "|" $namex "|" $montag "|" $montagvon "|" $montagbis "|" $dienstag "|" $dienstagvon "|" $dienstagbis "|" $mittwoch "|" $mittwochvon "|" $mittwochbis "|" $donnerstag  "|" $donnerstagvon "|" $donnerstagbis "|" $freitag "|" $freitagvon "|" $freitagbis "|" $samstag "|" $samstagvon "|" $samstagbis "|" $sonntag "|" $sonntagvon "|" $sonntagbis "|\n");fClose($handler); 
          </div>

          Ergebnis:

          8652|nein|Namea|Montag|["10:00","12:00","14:00"]|["11:00","13:00","15:00"]| usw.
          8653|nein|Nameb|Montag|["10:00","12:00","14:00"]|["11:00","13:00","15:00"]| usw.
          8654|nein|Namec|Montag|["10:00","12:00","14:00"]|["11:00","13:00","15:00"]| usw.
          usw. je nachdem wieviel Mitarbeiter vorhanden sind.

          Auslesen:
          PHP Code:
          $data=file_get_contents("../$planordner$jahrsystem/$woche_zerlegt.txt");
               
          $variables explode("\n"$data);
               foreach (
          $variables as $variable) {
                
          $var explode("|"$variable); 
          echo json_decode($var[4]);

          Ergebnis der Anzeige: Array


          lese ich jedoch $var[4] mit echo $var[4]; aus zeigt es mir ["10:00","12:00","14:00"] an.
          Warum?

          Danke
          Last edited by Andreas-LE; 08-12-2020, 22:36.

          Comment


          • #6
            ist doch richtig. wenn du den JSON-String dekodierst kommt das PHP-Array raus, das du gespeichert hast, und ein echo von Array ist "Array". Deswegen immer var_dump zum debuggen nehmen.

            var_dump(json_decode($var[4]));

            Comment


            • #7
              Und wie kann ich da jetzt lösen?

              Comment


              • #8
                Was lösen? Welches Problem? Du hast ein Array gespeichert, du bekommst ein Array wieder raus.

                Comment


                • #9
                  Ich sitze jetzt schon 3 Monate an diesem Problem und meine Tastatur hat schon keine Buchstaben mehr vom suchen.


                  Ein wirklich Sinnvollen Hinweis für die Verarbeitung findet man nicht.

                  Comment


                  • #10
                    welches Problem?

                    Hallo, wie kann ich aus einem Formular input name=xx[]
                    alle werte in eine txt speichern?
                    funktioniert. Problem gelöst. Und auslesen kannst du das auch und bekommst die Daten wieder als PHP Array, wie aus dem Formular.

                    Comment


                    • #11
                      Das Problem, das es nicht funktioniert!


                      die txt ist ja wie folgt in Zeilen aufgebaut:


                      8652|nein|Namea|Montag|10:00|11:00| usw.
                      8653|nein|Nameb|Montag|12:00|13:00| usw.
                      8654|nein|Namec|Montag|14:00|15:00| usw.
                      usw. je nachdem wieviel Mitarbeiter vorhanden sind.


                      Montag|Beginn|Ende|Dienstag|Beginn|Ende| usw.


                      Beginn und Ende kommen jeweils von montagvon[] und montagbis[] usw.


                      Ich glaub langsam, das ich das fast fertige Projekt in die Tonne kloppen kann.
                      Ist das einzige und wichtigste was noch fehlt.

                      Comment


                      • #12
                        Erst fragst du

                        Hallo, wie kann ich aus einem Formular input name=xx[]
                        alle werte in eine txt speichern?
                        Dann sagst du

                        Beim echo kommt das: ["10:00","12:00","14:00"] ["11:00","13:00","15:00"]

                        Daten stimmen
                        jetzt kommst du wieder mit

                        die txt ist ja wie folgt in Zeilen aufgebaut:

                        8652|nein|Namea|Montag|10:00|11:00| usw.
                        Das ist doch wieder was anderes.

                        Vielleicht entscheidest du dich erstmal was du überhaupt willst. Einfach zu behaupten ein Ist-Zustand "funktioniert nicht" bringt überhaupt nichts, so lange du den Soll-Zustand nicht definierst.

                        <?php

                        $input = ['10:00', '15:00'];
                        var_dump($input);
                        $json = json_encode($input);
                        var_dump($json);
                        $output = json_decode($json);
                        var_dump($output);
                        Funktioniert.

                        Comment


                        • #13
                          Erst einmal vielen Dank, das Du Dich der Sache überhaupt annimmst.


                          Wirklich hilfreich ist dieses Forum sonst nicht, außer viel Sprücheklopfer die denken Sie sind als Könner vom Himmel gefallen.


                          Ich habe nur aufgezeigt, wie ich es momentan habe.


                          Das <form> ist von einer foreach Schleife umschlossen, was die Mitarbeiter erzeugt bzw. erweitert.


                          Darin sind die input montagvon[], montagbis[] usw.
                          Die input werden durch die Schleife erweitert, je nach Mitarbeiteranzahl.



                          Diese Daten müssen pro Mitarbeiter von Montag bis Sonntag gespeichert werden und auch änderbar sein.


                          Bin natürlich für jeden Vorschlag offen.
                          Last edited by Andreas-LE; 09-12-2020, 19:46.

                          Comment


                          • #14
                            Vorschlag für was? Mit deinen Aussagen drehst du dich doch im Kreis

                            Diese Daten müssen pro Mitarbeiter von Montag bis Sonntag gespeichert werden und auch änderbar sein.
                            Code:
                            8652|nein|Namea|Montag|["10:00","12:00","14:00"]|["11:00","13:00","15:00"]| usw.
                            Anforderung erfüllt.

                            Comment


                            • #15
                              So wie du es aufgezeigt hast, habe ich es gemacht.
                              Nur leider geht da die Zuordnung der Zeiten mit den Mitarbeitern nicht.
                              Jeder Mitarbeiter hat ja eine eigene Zeile.


                              Wenn ich Ansatzweise einen Lösungsweg hätte wäre ich etwas schlauer. Nur leider hab ich den nicht.

                              Comment

                              Working...
                              X