variablen speichern

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • 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.

    Kommentar


    • #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.
      Zuletzt geändert von Andreas-LE; 07.12.2020, 11:41.

      Kommentar


      • #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.

        Kommentar


        • #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
          Zuletzt geändert von Andreas-LE; 08.12.2020, 23:36.

          Kommentar


          • #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]));

            Kommentar


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

              Kommentar


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

                Kommentar


                • #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.

                  Kommentar


                  • #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.

                    Kommentar


                    • #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.

                      Kommentar


                      • #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.

                        Kommentar


                        • #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.
                          Zuletzt geändert von Andreas-LE; 09.12.2020, 20:46.

                          Kommentar


                          • #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.

                            Kommentar


                            • #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.

                              Kommentar

                              Lädt...
                              X