kostenloser Webspace werbefrei: lima-city


wie gebe ich checkboxen aus?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    ultimativecharts

    Kostenloser Webspace von ultimativecharts

    ultimativecharts hat kostenlosen Webspace.

    habe checkboxen in meine website eingebaut

    jetzt möchte ich, dass wenn man auf "Abschicken" klickt ausgegeben bekommt:
    "Sie haben gestimmt für:
    -Song 1
    -Song 4
    -Song 8
    -Song 9
    -Song 10"

    wie geht das?



    bin so weit, dass man wenn man auf abschicken klickt auf eine php seite geleitet wird
    mit echo kann ich die erste zeile ausgeben: echo "Sie haben gestimmt für:";

    aber wie kann ich den rest ausgeben?

    hier der forumlarcode:
    <form id="songauswahl" name="songauswahl" action="songauswahl.php" method="post">
    <input type="hidden" name="sent" value="yes">
    <h1>Welche Lieder sollen es in die Charts schaffen? - Sie entscheiden! <br> 
    Sie können bis zu 5 Lieder aus der Liste auswählen</h1>
    <p id="songauswahl">
    <div id="songslinks">
    <input type="checkbox" name="song" value="song1" onclick="chkcontrol(0)"/> Song1 <br />
    <input type="checkbox" name="song" value="song2" onclick="chkcontrol(1)"/> Song2 <br />
    <input type="checkbox" name="song" value="song3" onclick="chkcontrol(2)"/> Song3 <br />
    <input type="checkbox" name="song" value="song4" onclick="chkcontrol(3)"/> Song4 <br />
    <input type="checkbox" name="song" value="song5" onclick="chkcontrol(4)"/> Song5 <br />
    </div>
    <div id="songsrechts">
    <input type="checkbox" name="song" value="song6" onclick="chkcontrol(5)"/> Song6 <br />
    <input type="checkbox" name="song" value="song7" onclick="chkcontrol(6)"/> Song7 <br />
    <input type="checkbox" name="song" value="song8" onclick="chkcontrol(7)"/> Song8 <br />
    <input type="checkbox" name="song" value="song9" onclick="chkcontrol(8)"/> Song9 <br />
    <input type="checkbox" name="song" value="song10" onclick="chkcontrol(9)"/> Song10 <br />
    </div>
    </p>
     <div id="submitbutton">
    <input type="submit" name="" value="Absenden" />
    </div>		
    </form>
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Du hast bei deiner Form method="post" angegeben. Das heisst die Daten werden per Post übertragen. Das bedeutet du musst sie in PHP über die $_POST Variable ansprechen, der dort sind sie nun für dich gespeichert.

    Kleiner Hinweis, du gibst deinen Checkboxen immer den Namen "song", soweit schonmal ganz gut, allerdings schreib für PHP bitte name="song[]", sonst funktioniert innerhalb von PHP die Umwandlung in ein Array nicht.

    Danach kannst du in deinem verarbeitendem PHP Skript sowas schreiben:

    $SongsChosen = $_POST['song'];

    Nun sind in $SongsChosen alle Songs aufgezählt, die der User gewählt hat. Das kannst du dir mit var_dump() ausgeben lassen, oder mit $SongsChose[0],$SongsChosen[1], etc.

    Bitte vorher überprüfen, ob $_POST überhaupt existiert, sonst wurden ja keine Eingaben gemacht:

    if(isset($_POST['song'])) {
    ...
    }
  4. Am simpelsten so:
    <?php
    $song1 = $_POST['song1'];
    $song2 = $_POST['song2'];
    .
    .
    .
    if(isset($song1)) { echo ' Sie haben f&uuml;r Song 1 gestimmt'; }
    if(isset($song2)) { echo ' Sie haben f&uuml;r Song 2 gestimmt'; }
    ?>


    Erläuterung:

    $song1 = $_POST['song1'];

    Überträgt die Checkbox aus deinem Formular in eine Variable

    if(isset($song1)) { echo 'Sie haben f&uuml;r Song 1 gestimmt'; }


    Die Abfrage überprüft, ob die Checkbox abgehakt wurde, und gibt je nach dem aus, dass der Benutzer für Song 1 gestimmt hat.
    (&uuml; = ü)

    Wie es wesentlich kürzer geht, hat midwar geschrieben.
  5. Autor dieses Themas

    ultimativecharts

    Kostenloser Webspace von ultimativecharts

    ultimativecharts hat kostenlosen Webspace.

    ok habs geschafft, dass es ausgegeben wird :D

    allerdings noch eine frage:
    ich habe einen java script aus dem internet, der nur 5 häkchen zulässt und dann eine fehlermeldung erscheinen lässt.
    wenn ich aber den namen von "song" auf "song[]" ändere funktioniert diser nciht mehr.
    wie muss ich den umändern?

    hier der script:
    function chkcontrol(j) {
    var total=0;
    for(var i=0; i < document.songauswahl.song.length; i++){
    if(document.songauswahl.song[i].checked){
    total =total +1;}
    if(total > 5){
    alert("Bitte wählen Sie maximal 5 Songs aus")
    document.songauswahl.song[j].checked = false ;
    return false;
    }
    }
    }
  6. moinmoin,

    mmhh, sowohl Firefox als auch Netscape meckern bei mehr als 5 Häckchen und senden bei weniger als 5 ab.....

    für diesen Beitrag gebe ich natürlich gerne die Gulden wieder ab, aber ich würde sagen, es funzt.

    harro
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!