Ankündigung

Einklappen
Keine Ankündigung bisher.

Variable-Speicherung für Auswertungsformular

Einklappen

Neue Werbung 2019

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

  • Variable-Speicherung für Auswertungsformular

    Hallo Leutz...

    Ich muss vorweg direkt sagen dass ich gerade erst mit PHP und MYSQL angefangen habe und daher noch nicht so fit darin bin.

    daher hab ich ein kleines Problem...und zwar

    Ich habe 2 Scripts (folgen weiter unten). Es geht um eine Infoabfrage für Kurse. In dem ersten Script ist die Auswertung einer vorherigen Abfrage die direkt in eine weitere Auswahlmöglichkeit (Radio-Buttons) umgesetzt wird. Der Wert zur Abfrage wurde aus der vorherigen Abfrage übersendet ($kurs_kat_send - das ist die Kurskategorie). Der User soll aus dem Menü den Kurs auswählen über den er Infos haben möchte. Dann erfolgt die erneute Abfrage, in der die kursnummer des R-Buttons an die nächste Seite übersendet wird. Da wird der Kurs an sich angezeigt. Das klappt auch alles prima. Nur möchte ich es jetzt so machen dass ich unten einen "zurück"-link einsetze, und der User wieder zum vorherigen Auswahlmenü kommt und seine vorherige Auswahl vorfindet (im mom bekomme ich da nur Fehlermeldungen, und ich denke dass es daran liegt dass der Wert für $kurs_kat_send nicht mehr vorhanden ist...).

    Wie könnte ich das hinbekommen ? Hat jemand vielleicht eine Idee???

    besten Dank...

    Lapje



    Script 1 - Auswahl

    Code:
    <body> 
    
    <?php 
    
    mysql_connect(); 
    mysql_select_db("schulungen"); 
    
    $mysql_abfrage = "SELECT * FROM kursbeschreibung WHERE kurs_art_nr = $kurs_art_send"; 
    
    $mysql_ergebnis = mysql_query($mysql_abfrage); 
    $num = mysql_num_rows($mysql_ergebnis); 
    
    
    
    ?> 
    <table width="580" height="360" border="0" cellpadding="0" cellspacing="0"> 
    <tr> 
    <td align="left" valign="top"> 
    
    <form action="iframe_kursbeschreibung.php" method="post"> 
    <?php 
    echo "Folgende Kurse können sie bei uns belegen: 
    
    "; 
    echo '<table border="1" cellspacing="0" cellpadding="0">'; 
    echo "<tr>"; 
    echo"<th></th><th>Kursnummer</th> <th>Kurbezeichnung</th></tr>"; 
    
    
    while ($datensatz = mysql_fetch_assoc($mysql_ergebnis)) 
    { 
    
    echo "<tr><td><input type='radio' name='kurs_nr_send' value='" . $datensatz 
    ["kurs_nr"] . "'</td><td>" . $datensatz["kurs_nr"] . "</td><td>" . $datensatz 
    ["kurs"] . "</td></th> "; 
    } 
    
    echo "</tr>"; 
    echo "</table>"; 
    ?> 
    
    
     
    <input type="submit"> <input type="reset"> 
    </form>
    Script 2 - Auswertung


    Code:
    <?php 
    
    mysql_connect(); 
    mysql_select_db("schulungen"); 
    
    $mysql_abfrage = "SELECT * FROM kursbeschreibung WHERE kurs_nr = $kurs_nr_send"; 
    
    $mysql_ergebnis = mysql_query($mysql_abfrage); 
    
    $num = mysql_num_rows($mysql_ergebnis); 
    
    while ($datensatz = mysql_fetch_assoc($mysql_ergebnis)) 
    { 
    echo '<table border="0" width="400" cellspacing="0" cellpadding="0">'; 
    
    echo '<tr>'; 
    echo '<td width="150">Kursnummer:
     <u>' . $datensatz["kurs_nr"] . '</u></td>'; 
    echo '<td width="300">Kursbezeichnung:
     <u>' . $datensatz["kurs"] . '</u></td>'; 
    echo '</tr>'; 
    
    echo '<tr>'; 
    
    echo '<td width="400">
    
    
    Kursbeschreibung:
     ' . $datensatz 
    ["kursbeschreibung"] . '</td>'; 
    echo '<tr>'; 
    
    echo '</table>'; 
    
    } 
    
    ?> 
    
    
    
    zur&uuml;ck zur Auswahl </p>

  • #2
    starte eine Session mit:

    PHP-Code:
    session_register("formular"); 
    Diese Anweisung muss ausgeführt werden bevor irgendwas ausgegeben wird.

    Danach steht dir die Variable $formular zur Verfügung.
    Du kannst weiter Variablen hinzufügen. Sind deine Formulare bearbeitet
    wird die Session mit session_desroy beendet.

    Lies auch die Beschreibung für Session-Funktionen bevor du weitere Fragen dazu stellst.

    http://www.selfphpfriend.de
    http://www.selfphpfriend.de/funktion...onen/index.php

    Kommentar


    • #3
      Zitat von Alpha Centauri
      starte eine Session mit:
      PHP-Code:
      session_register("formular"); 
      Diese Anweisung muss ausgeführt werden bevor irgendwas ausgegeben wird.
      Das ist dummes Zeug.

      1. session_start muss vor jeglicher Ausgabe stehen
      2. Die session*register-Funktionen sind veraltet und sollten nicht mehr benutzt werden. Statt dessen $_SESSION['name'] = "Willi Wacker";

      Gruß
      phpfan

      Kommentar


      • #4
        Danke für die Info 'phpfan',

        zu 1. Die Formulierung ist zwar anders aber sagt das gleiche.
        zu 2. unter PHP 5 scheint alles zu fuktionieren.

        Wenn es für künftige Projekte besser ist hab ich kein Problem $_SESSION[] anzuwenden.

        Ich kann aber nicht erkennen das es jetzt das Problem besser löst.

        Habe ich was übersehen?

        Kommentar


        • #5
          Zitat von Alpha Centauri
          Ich kann aber nicht erkennen das es jetzt das Problem besser löst.
          session_register() funktioniert nur, ween register_globals aktiviert ist:

          If you want your script to work regardless of register_globals, you need to instead use the $_SESSION array as $_SESSION entries are automatically registered. If your script uses session_register(), it will not work in environments where the PHP directive register_globals is disabled.
          -> http://de3.php.net/manual/en/functio...n-register.php

          Kommentar


          • #6
            OK!

            Man(n) lernt nie aus.
            Ist mir warscheinlich deshalb nicht aufgefallen.

            Kommentar


            • #7
              PHP5 mit aktiviertem register_globals sollte dir aber auch zu denken geben.

              Kommentar


              • #8
                Zitat von Alpha Centauri
                zu 1. Die Formulierung ist zwar anders aber sagt das gleiche.
                Falsch!

                Du spríchst von session_register(); phpfan - korrrekterweise - von session_start().

                Kommentar


                • #9
                  @Lapje

                  Bitte bei PHP-Quellcode [PHP]-Tags benutzen: (dazu ist er da)
                  Code:
                      
                      
                      
                  
                  
                  PHP-Code:
                   /*  Hier Quellcode posten, natürlich ohne [ code ] :-)  */ 

                  Kommentar

                  Lädt...
                  X