Auswahlliste

  • Hallo zusammen,


    wollte folgendes machen:


    Über eine Auswahlliste soll der Besucher verschiedene Texte Laden können. Dies habe ich so gemacht:


    <form action="http://feg-goch.de/cgi-bin/auswertung.pl" method="get" target="Daten">
    <p>
    <select name="top5" size="3">
    <option>1</option>
    <option>2</option>
    <option>3</option>
    <option>4</option>
    <option>5</option>
    <input type="submit" value=" Auswahl ">
    </select>
    </p>
    </form>


    Nun hatte ich gedacht, der Wert wird in der Auswertung.pl Datei abgelegt. So hatte ich das verstanden. Ist aber leider nicht so. Nach drücken den Buttons will er mir die Datei zum speichern anbieten.


    Wollte den Wert eigentlich in die Datei einlesen und sie später Auszulesen und mit PHP Include Verschiedene Texte einzulesen.


    Kann mir einer sagen was ich falsch mache?


    Detlef

  • Die Adresse, die du bei action einträgst, ist normalerweise nur die Seite, auf die nach Abschicken des Formulars weitergeleitet wird.
    Wenn du willst, dass die Werte irgendwo gespeichert werden, musst du glaube auch die Methode method="post" verwenden.
    So wirklich kenn ich mich mit der Thematik Formulare aber auch nicht aus.
    Am besten du beliest dich dazu mal auf <!-- w --><a class="postlink" href="http://www.selfhtml.de">http://www.selfhtml.de</a><!-- w --> :
    <!-- m --><a class="postlink" href="http://de.selfhtml.org/html/formulare/definieren.htm">http://de.selfhtml.org/html/formulare/definieren.htm</a><!-- m -->

  • hm,


    hab ich mir mal durchgelesen,


    bin mir nun nicht sicher, ob ich auf den Richtigen Weg bin. Wenn ich das so lese, sehe ich, das sich das eher auf Transfer von Daten bezieht. Oder sehe ich das Falsch?


    Eigentlich wollte ich nur eine Auswahl machen, zb so:


    Auswahl Liste:


    1) Nachruf von XXX
    2) Nachruf von YYY
    3) Nachruf von SSS


    Auf Klicken einer dieser Zeilen sollte dann dadrunter ein Text erscheinen.


    Bin ich da auf den Richtigen Weg oder verlauf ich mich da gerade ?


    Wäre für ne Antwort oder und ein Tips sehr dankbar.


    Detlef

  • SO hab mal was gebaut, was leider noch net ganz so klappt:



    bei IE6 klappt es, nur bei Mozialla wird der Button nicht angezeigt.


    Auch habe ich das ganze mit onclick mal versucht umzubauen, leider auch ohne erfolg.


    jemand noch ne Idee?


    Danke


    Detlef

  • Also deine Aufgabe muss du so ab arbeiten:


    Eingabe (Formular) -> Senden (GET oder POST) -> php muss die Variabeln empfangen -> Variabeln werden in eine php eigene Variabel gespeichert -> Auswertung durch IF() -> Ausgabe des Ergebnisses.


    bitte POST bevorzugen


    Ich schreibe dir mal eine Beispiel Anwendung:




    So zur Erklärung:

    PHP
    <?php $_SERVER['PHP_SELF']; ?>


    Hier rüber wird der aktuelle Dateiname eingetragen.


    Code
    method="post"


    Post bezeichnet den Weg der Übertragung von den Daten hier werden sie zur Datei Geschickt.



    Code
    if(isset($_POST['Auswahl'])){
    if(isset($_POST['top5'])){


    Hier mit wird Geprüft ob jemand auf Auswahl geklickt hat, so erscheint beim Ersten laden der Seite noch kein Text erst wen man einen Ausgewählt hat.
    Die 2. Zeile prüft ob jemand etwas in der Liste ausgewählt hat, weil ohne Auswahl würde das Programm nicht wissen was es anzeigen soll, also würde es mit einem Error Abbrechen.


    Code
    $text = $_POST['top5'];


    Hier mit wird die Variabel vom HTML Formular in eine Variabel im PHP Programm übertragen, die dann verarbeitet wird.


    Code
    if($text == 1)
    {
    echo "text1";
    }


    Hier wird geprüft ob man das Feld mit dem Value = "1" gedrückt hat, wenn dies zu tritt wird das ausgegeben was in den {} steht.
    Über Echo wird ein Text ausgegeben, dieser kann durch HTML-Tags formatiert werden.


    Diese Überprüfung wird 4-mal gemacht, da es 4 verschiedene Texte gibt.


    Code
    else {
    echo "Bitte w&auml;hlen sie ein R&uuml;ckblick aus!";


    Hier mit wird noch angegeben was ausgegeben wird wen der Nutzer kein Feld ausgewählt hat.


    Code
    unset($_POST['Auswahl']);


    hier mit wird die HTML-Variabel gelehrt nicht nötig aber kann man nutzen.


    Gruß Vincent

  • Moin,


    ja so würde es auch gehen, ich habs jetzt auch hinbekommen.


    Der Fehler den ich hatte, das der Button bei Firefox nicht angezeigt wurde, war das die Inputzeile nicht im Select bereich stehen darf.


    PHP
    <form action="<?php $_SERVER['PHP_SELF']; ?>" method="post"> 
    <select name="top5" size="4"> 
    <option value="1"> Text 1 </option> 
    <option value="2"> Text 2 </option> 
    <option value="3"> Text 3 </option> 
    <option value="4"> Text 4 </option> 
    </select>
    <input type="submit" name="Auswahl">
    </form>


    Gruß Detlef

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!