anpassbares Formular das eing. Werte behält

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

  • anpassbares Formular das eing. Werte behält

    Hallo.
    Ich möchte zwischen mehreren FormularSeiten navigieren und die Daten sollen in Sessions gespeichert werden.
    Leider funktioniert es nicht. Ich habe im Forum gestöbert, wusste aber nicht wirklich wonach ich suchen muss.
    Hat jemand eine Idee?
    PHP-Code:
     <?php session_start(); ?>
    <form name="form" action="<?php echo $PHP_SELF."?=".SID?>" method="POST">
    <?php
     
    if (!isset($_SESSION['cnt'])) {
      
    $_SESSION['cnt'] = 1;
     }
     else {
      
    $_SESSION['cnt'] = $_SESSION['cnt'] +  $NeueZeilen;
     }
     echo 
    "<table width=200 border=1>";
     for (
    $i=1;$i<=$_SESSION['cnt'];$i++) {
      echo 
    "<tr>";
      for (
    $j=1;$j<=3;$j++) {
       
    $name="ED".$i."_".$j;
       
    $POSTname=${"ED".$i."_".$j};
       if (! isset (
    $_SESSION['$name'])) {
        
    $_SESSION['$name'] = '';
       }
       else {
        
    $_SESSION['$name'] = $POSTname;
       }
       echo   
    "<td><input name=";
       echo 
    $name;
       echo 
    " type=text value=";
       echo 
    $_SESSION['$name'];
       echo 
    "></td>";
      }
      echo 
    "</tr>";
     }
     echo 
    "</table>";
    ?>
    Vielen Dank für Eure Mühe.
    Gruß Philipp
    Zuletzt geändert von ph.schmidt; 29.06.2004, 23:34.

  • #2
    Ich habe im Forum gestöbert, wusste aber nicht wirklich wonach ich suchen muss.
    Ja:

    Session Formular mehrere Seiten (versuch mal ein paar Kombinationen)

    Wir haben auch ein Tutorial dazu, soweit ich mich erinnere.

    Kommentar


    • #3
      was funz nicht? deine for-schleife vermutlich , schau mal ins Manual und arbeite mit register_globals = Off und $_SESSION anstatt $HTTP_SESSION_VARS

      Kommentar


      • #4
        @asp2php
        bei meinem webSpace ist register_globals aber ON
        also muss ich doch mit $HTTP_SESSION_VARS arbeiten, oder?
        hmm was funzt nicht:
        in erster linie erhöht er nicht cnt wenn man auf "1 Zeile mehr" klickt.
        die fors sind meiner Meinung nach ok.
        Kann ich aber nicht wirklich testen, genauso nicht, ob er die Werte wieder odrentlich reinschreibt.

        Kommentar


        • #5
          Original geschrieben von ph.schmidt

          in erster linie erhöht er nicht cnt wenn man auf "1 Zeile mehr" klickt.
          die fors sind meiner Meinung nach ok.
          das meine ich doch mit der for schleife. Nun ersetze $cnt durch $_SESSION['cnt'] dann sollte es funz (und $HTTP_SESSION_VARS durch $_SESSION, funz IHMO auch mit rg=on, hab noch nie mir rg=on gearbeitet, daher )

          Kommentar


          • #6
            die fors sind meiner Meinung nach ok.
            klarstellen!
            Kann ich aber nicht wirklich testen, genauso nicht, ob er die Werte wieder odrentlich reinschreibt.
            wieso nicht? fehlt dir die fähigkeit oder die möglichkeit?
            Die Zeit hat ihre Kinder längst gefressen

            Kommentar


            • #7
              so danke, für die Hilfe.
              Ich habe es jetzt oben mal aktualisiert.
              er fügt jetzt neue Zeilen ein, aber er übernimmt noch nicht die Werte.
              Wahrscheinlich ist mit $name irgendwas nciht in Ordnung....

              TobiaZ, das Tutorial erklärt zwar die Basics aber wenn man auf Probleme stößt ist es nicht sonderlich hilfeich.

              Kommentar


              • #8
                Schade.

                ABER wieso kannst du keine Testausgaben machen? Damit sollte es ein leichtes sein den fehler zu finden. Gehört übrigens zu jedem Debuging dazu.

                session-id wird demnach aber überall richtig übergeben? Ist ein häufiger fehler.

                Kommentar


                • #9
                  @tobiaZ
                  testausgaben krieg schon ich hin, ich wollte damit nur sagen, dass ich nicht sehen konnte ob er richtig in die Felder schreibt wenn es gar keine Felder gibt. Aber das hat sich nun ja erledigt.

                  echo SID;
                  macht er nur 1x -> demnach wird die ID wohl nicht richitg weitergegeben.
                  (Ist ein häufiger Fehler
                  Ich mache es über:
                  PHP-Code:
                  <a href="<?php echo $PHP_SELF."?=".SID?>">weiter</a>

                  Kommentar


                  • #10
                    hast du überall session_start()

                    Kommentar


                    • #11
                      es ist (erstmal) nur eine Datei.
                      Sie ruft sich selber auf.

                      Kommentar


                      • #12
                        schreib mal direkt hinter das session_start ein echo session_id() rein und guck, ob da immer die gleiche, oder verschiedene sids raus kommen...

                        Kommentar


                        • #13
                          ja, alles das gleiche - wie gesagt ich grübel gerade über $name.
                          Mal müssen wahrscheinlich ' ' darum mal nicht.
                          Weißt du es genauer?

                          Kommentar


                          • #14
                            so ich habs hin - allerdings ein neues Problem...
                            Ich werde mal nen neuen Thread aufmachen.
                            Euch vielen Dank.
                            Gute Nacht
                            Gruß Philipp

                            Kommentar


                            • #15
                              anpassbares Formular das eing. Werte behält

                              Hallo.
                              Ich habe ein Formular erstellt, das seine Werte in Sessions speichert und sie auch wieder ausliest. (Damit man zwischen mehreren Form-Seiten navigieren kann).
                              Ich möchte aber zur Laufzeit dem Benutzer die Möglichkeit bieten Zeilen hinzuzufügen.
                              Damit ergibt sich folgendes Problem:
                              momentan gehts über 2 forms
                              PHP-Code:
                              <form name="form1" action="<?php echo $PHP_SELF."?=".SID."&NeueZeilen=1"?>" method="POST">
                              und das andere From beinhaltet das erstellen bzw. füllen der Tabelle über 2 geschachtelte fors und einen "weiter" Button.
                              anderer Thread

                              Wenn nun eine Zeile hinzugefügt wird, gehen die gemachten Einstellungen verloren, da die Editfelder ja im anderen Form drinn sind.

                              Ist irgendwie ein "Über-Kreuz-Problem".
                              Kann mir jemand auf die Sprünge helfen.
                              Danke Gruß Philipp

                              Kommentar

                              Lädt...
                              X