wie gebe ich checkboxen aus?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
abschicken
ausgeben
code
datum
eingabe
entscheiden
form
internet
lied
liste
post
sagen
schaffen
senden
song
songauswahl
umwandlung
variable ansprechen
variable code
-
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>
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
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'])) {
...
} -
Am simpelsten so:
<?php $song1 = $_POST['song1']; $song2 = $_POST['song2']; . . . if(isset($song1)) { echo ' Sie haben für Song 1 gestimmt'; } if(isset($song2)) { echo ' Sie haben fü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ü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.
(ü = ü)
Wie es wesentlich kürzer geht, hat midwar geschrieben.
-
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; } } }
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage