php - dropdown

  1. mcnewbie

    mcnewbie Thread Starter MacUser Mitglied

    Mitglied seit:
    09.08.2004
    Beiträge:
    1.215
    Zustimmungen:
    5
    moin... hab ein kleines (denk)problem ... hab ein formular gebaut zur benutzerregistrierung - unter anderem muss auch das land ausgewählt werden, welches aus der datenbank kommt:

    PHP:
    while($row=mysql_fetch_assoc($result))
        {
        
          echo 
    '<option value="'.$row['countries_id'].'">'.$row['land'].'</option>';
        
        
        }                
    wenn der benutzer jetz auf senden klickt, wird die seite neu aufgerufen - hat er jetz irgendwas falsch angegeben, sind in allen feldern die values noch drinnen nur das drop-down ist neu auszuwählen... wie kann ich "ihm" denn sagen, dass er das vorher schon ausgewählte land speichert?

    bin für hilfe dankbar! ;)
     
  2. Hilarious

    Hilarious MacUser Mitglied

    Mitglied seit:
    25.11.2004
    Beiträge:
    2.161
    Zustimmungen:
    5
    Ich hoffe, ich habe Dich richtig verstanden. Du möchtest wissen, wie man einen bereits zuvor übermittelten Wert in Deiner Select-Box wieder zur Anzeige bringt. Dazu wird der Flag »selected« in dem HTML-Tag »OPTION« verwendet, was bewirkt, dass ein bestimmter Wert vorausgewählt wird. Ob der betreffende Wert zuvor gewählt wurde oder nicht, sagt Dir das superglobale Array $_POST (oder $_GET, je nach Übermittlungsmethode des Formulars).

    Ein Beispiel, wobei ich annehme, dass Du das Formular mit $_POST übermittelst:
    PHP:
    <?

        function 
    displayForm () {

    ?>
    <form method="post" action="<?=$_SERVER['PHP_SELF']?>">
        <select name="countries_id" size="1">        
    <?
        // Schleife zur Ausgabe der Optionen
        
        if ($results = fetchCountries ()) {
            echo "<option value=\"\">Bitte ausw&auml;hlen ...</option>\n";
            while ($row = mysql_fetch_assoc ($results)) {
                printf ("<option value=\"%s\"%s>%s</option>\n"    , $row['countries_id']
                                                                , (($_POST['countries_id'] == $row['countries_id']) ? 'selected' : '')
                                                                , stripslashes (htmlentities ($row['land']))
                                                                );
            }
        } else {
            echo "<option value=\"\">Keine L&auml;nder zur Auswahl.</option>\n";
        }

    ?>
        </select>
    </form>
    <?

        }
        
        displayForm();

    ?>
    Ich habe den Code jetzt mal eben runtergetippt und nicht getestet, aber es sollten nur Tippfehler drin sein, wenn überhaupt.

    Ich hoffe, es hilft!
     
  3. mcnewbie

    mcnewbie Thread Starter MacUser Mitglied

    Mitglied seit:
    09.08.2004
    Beiträge:
    1.215
    Zustimmungen:
    5
    oh vielen dank werd ich morgen probiere - hab grad beschlossen wo zu geben - zu müde heute! ;)
     
  4. mcnewbie

    mcnewbie Thread Starter MacUser Mitglied

    Mitglied seit:
    09.08.2004
    Beiträge:
    1.215
    Zustimmungen:
    5
    so schön, vielen dank nochmal, das hat mal funktioniert! jetz hab ich ein neues problem wo ich nicht weiterkomme....

    hab ein formular mit 4 textfeldern, der inhalt von denen wird dann in eine tabelle in die datenbank geschrieben - konkret wird ein neues seminar erstellt... jetz hätt ich gerne, dass er mit dem eintrag in die datenbank auch eine neue seite (optimalerweise .php) erstellt und den url in die datenbank hinzuschreibt... url in die db wäre ja klar ... aber wie kann ich dass machen, dass sobald der sendenbutton geklcikt wird, das zeugs in der datenbank steht (soweit geht ja alles ;) ) auf dem server die seite test.php angelegt wird und in der tabelle im url feld test.php steht...

    hoff das war verständlich und wiedermal vielen dank für die hilfe! ;) bin noch nicht so "advanced" in php und versuch grad dass halbwegs hinzukriegen mti einem kleinen projekt ;)
     
  5. Andy Macht

    Andy Macht MacUser Mitglied

    Mitglied seit:
    28.12.2004
    Beiträge:
    226
    Zustimmungen:
    0
    php.net/manual ist dein freund
     
  6. mcnewbie

    mcnewbie Thread Starter MacUser Mitglied

    Mitglied seit:
    09.08.2004
    Beiträge:
    1.215
    Zustimmungen:
    5
    wenn ich dort schon schlauer geworden wäre hätte ich nicht gefragt, aber danke! ;)
     
Die Seite wird geladen...