include per submit-button (mehrseit. Formular)

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

  • include per submit-button (mehrseit. Formular)

    hallo,
    nun probier ich seit drei Tagen alles mögliche aus - klappt nix ;-(
    ich will jetzt meine ganzen bemühungen (codes) gar net posten -
    zuviel chaos..

    es gibt/gäbe ja zwei Möglichkeiten:
    A)
    PHP-Code:
    php.. session..start
    html..blabla
    <form action="<?PHP echo $_SERVER['PHP_SELF']; ?>" method="post">
    <?php include ('detailsuche'. (int)$wohin .'.php'); ?> // hier soll dann 
    je nach Button vor und Button zurück die richtige Datei includiert werden...

    </form>
    html..blabla
    Problem: in den includierten Datein sind drei submit-Button,
    1. abschicken, 2. zurück, 3. vor
    .. die Buttons haben durch den Value unterschiedliche Texte

    wenn ich per _Get abfrage welche seite gerade "drin" ist verhakelt der sich,
    d.h. in der Browserzeile steht ...datei?xy=1 obwohl xy=2 geladen ist -

    wie krieg ich das richtig hin?

    B)
    ich lade jede Seite komplett als Formular:
    wie übergebe ich Hiddenfelder vor und zurück?
    wie adressiere ich die submit-Buttons vor / zurück? dass die wissen
    welche Seite laden? da ich ja nur ein "action" habe

    verzweifelt guck ;-(

    cu

    meine ansätze:
    PHP-Code:
    <input type="submit" name="zuseite1" value="weiter &raquo;" class="butt1" />
    <input type="submit" name="zuseite2" value="weiter &raquo;" class="butt1" />
    <input type="submit" name="zuseite3" value="weiter &raquo;" class="butt1" />
    <input type="submit" name="zuseite4" value="weiter &raquo;" class="butt1" />

    if (( $_POST['zuseite1']) AND ($_POST['wohin'] = 2)) {$wohin = 1;}
    elseif (( $_POST['zuseite2']) AND ($_POST['wohin'] = 1)) {$wohin = 2;}
    elseif (( $_POST['zuseite2']) AND ($_POST['wohin'] = 3)) {$wohin = 2;}
    elseif (( $_POST['zuseite3']) AND ($_POST['wohin'] = 2)) {$wohin = 3;}
    elseif (( $_POST['zuseite3']) AND ($_POST['wohin'] = 4)) {$wohin = 3;}
    else $wohin = 1;

    html...
    <form action="<?PHP echo $_SERVER['PHP_SELF']; ?>" method="post">

    <?php include ('detailsuche'. (int)$wohin .'.php'); ?> 

    </form>
    anderer ansatz:
    PHP-Code:
     $wohin 1;
     if ( 
    $_POST['zuseite1b']) {$wohin 1;  }
     elseif ( 
    $_POST['zuseite2b']) {$wohin 2;  echo "$wohin <br>b";}
     elseif ( 
    $_POST['zuseite2a'])  {$wohin 2;  echo "$wohin <br>c";}
     elseif ( 
    $_POST['zuseite3b']) {$wohin 3;  echo "$wohin <br>d";}
     elseif ( 
    $_POST['zuseite3a']) {$wohin 3;  echo "$wohin <br>e";} 
    Problem ist:
    Die _Post-Variablen existieren ja, und ich kann net nach Value abfragen
    oder, dann muss da ja der ganze Text der Buttons rein?


    cu
    Gwolf
    Zuletzt geändert von Gwolf; 27.01.2005, 15:22.

  • #2
    die adresszeile wird nicht geändert weil es keine get sondern eine post anfrage ist.
    probier mal den action parameter im form tag zu verändern, vielleicht klappts dann...

    mfg Karl

    Kommentar


    • #3
      ne, action ist schon in ordnung, und der letzte ansatz ist fast in ordnung.
      hint: gib dir mal das ganze array mit print_r($_POST) mal aus und schaue es dir an.

      Kommentar


      • #4
        hallo,

        mit action=get zeigt er mir ja alles an aus dem formular = kauderwelsch

        hier print_r
        PHP-Code:
        ( [xxeingabe] => [preispro] => [preis] => [zuseite2a] => weiter » 
        [lage] => [verkehr] => [verpflegung] => [zuseite1b] => Weiter » 
        [zuseite3a] => « Zurück 
        alle gedrückten submits-button sind vorhanden,
        mal geht es eine seite weiter, aber dann nicht zurück -
        d.h.
        wenn ich z.b. zurück drück, und dann weiter, kann es sein
        dass bei weiter dann zurückgeht???

        Kommentar


        • #5
          wenn ich z.b. zurück drück, und dann weiter, kann es sein
          dass bei weiter dann zurückgeht???
          ihr seid ja ein poet. aber sich klar auszudrücken muss ein entwickler schon können.

          du kannst auch mehrere <form>'s benutzen, bzw. text-links verwenden.

          Kommentar


          • #6
            danke - aber zum poeten ist mir nach drei tagen threads studieren und
            alles mögliche auszuprobieren, wahrlich nich t zu mute...

            es ist eben nicht logisch, was dabei rauskommt, also kann man es nicht logisch ausdrücken -
            ich versuchs mal:
            bin auf seite 1 (bzw haupotseite, dort ist seite 1 included, innerhalb der
            form-tags)
            drücke auf weiter: wenn glück, d.h. vorher session zerstört, dann geht es
            evtl auf seite 2, d.h. seite zwei wird includet -

            wenn ich dort auf zurück drücke (also zu seite 1), dann geht nix..
            wenn ich aber danach auf dieser seite zwei auf weiter drücke -
            komtm seite 1, weil evtl jetzt "er" gefresen hat, dass vorher zurück
            gedrückt war - ergo ???
            kein plan

            auch mit verschiedenen forms hab ichs probiert - irgendwie nur chaos,
            d.h ,
            ich habe dann versucht
            PHP-Code:
              /* Welche Seite anzeigen */
              
            if( array_key_exists'site'$_GET ) ) $intShowSite = (int)$_GET['site'];
              else 
            $intShowSite 1;
              
              
            /* Nach vorne oder nach hinten navigieren? */
              
            if( array_key_exists'submitNext'$_POST ) ) $intShowSite++;
              elseif( 
            array_key_exists'submitBack'$_POST ) ) $intShowSite--;


              switch( 
            $intShowSite ) {
                case 
            1
                  include(
            'detailsuche1.php');
                  break;
                case 
            2
                  include(
            'detailsuche2.php');
                  break;
                case 
            3
                  include(
            'detailsuche3.php');
                  break; 
            und in den einzelnen include-dateien dann die einzelnen forms:
            PHP-Code:
            <form action="<?PHP echo $_SERVER['PHP_SELF']; ?>?site=1" method="post">
            oder
            PHP-Code:
            <form action="<?PHP echo $_SERVER['PHP_SELF']; ?>?site=2" method="post">
            etc..

            aber auch da irgendwie, irgendwo ein fehler, geht vorwärts aber zurück nicht

            cu
            Gwolf

            Kommentar


            • #7
              ich weiß nicht was du hast. hab mir so einen code angelegt:
              PHP-Code:
              <form action="p.php" method="post">
                  <input type=submit name=a />
                  <input type=submit name=b />
                  <input type=submit name=c />
              </form>
              <pre>
              <?php
                  print_r
              ($_POST);
              ?>
              und wenn ich den ersten button drücke, ist nur 'a' in meinem $_POST definiert, beim zweiten - 'b', etc...

              d.h. ich könne locker mithilfe von isset oder sowas feststellen, welcher button angeklickt wurde.

              Kommentar


              • #8
                auch wieder was gelernt -
                hab nun mir auch so ein kleines beispiel gemacht -
                mit includes,
                und da geht es auch ???

                nun muss ich klein aufbauen und mal testen wo der fehler dann kommt


                nun muss ich mein chaos ordnen -
                vieleicht durch das tausend dinge probieren?

                ich danke erstmal...

                Kommentar

                Lädt...
                X