Value i checkbox - hvordan trækkes den ud?
På en bookingside kan man vælge mellem forskellige ture, ved at afkrydse i et antal checkboxe. I chexkboksene ligger en value som hentes i en database, og som skal bruges, hvis den pågældende boks markeres. Der kan kun markeres een ad gangen.Spørgsmålet er: hvordan får jeg den pågældende værdi ud af checkboksen og over i en variabel, som jeg efterfølgende kan bruge som WHERE udtrykket i en sql-sætning.
Siden kan ses her: http://www.web-legestuen.dk/havkajak2014/book_guidetur.php
NB. Der genereres et forskelligt antal checkbokse, alt efter hvor mange ture der er den pågældende dag.
Overføringsscriptet ligger over headeren, og ser sådan ud:
<?php
if(isset($_REQUEST['book_tur']))
{
$arrangementsnummer=$_POST['tur_check']; //det er denne der driller - hvis jeg selv sætter et nummer, fungerer det.
$navn=$_POST['tur_navn'];
$telefon=$_POST['tur_telefon'];
$email=$_POST['tur_email'];
$bookingtal=$_REQUEST['tur_antal'];
$besked=$_REQUEST['tur_note'];
if($besked==''){$besked=' ';}
$epoc=time();
$ip = $_SERVER['REMOTE_ADDR'];
include("db_con.php");
if((preg_match("/[a-zæøå0-9\. -]/i", $navn))AND(preg_match("/[0-9\. ]/", $telefon))AND(preg_match("/[a-zæøå0-9\.,\s\?\!\-\: ]/i", $besked))AND(preg_match("/[0-9 ]/", $bookingtal))AND(preg_match("/^[^\.]?[\w\.-]+@[^\.]?[\w\.-]+\.[A-Z]{2,4}$/i", $email)))
{
if($stmt=$mysqli->prepare('INSERT INTO `tilmeldinger` (`arrangementsnummer`, `navn`, `telefon`, `antal`, `email`, `besked`, `epoc`, `ip`) VALUES(?,?,?,?,?,?,?,?)'))
{
$stmt->bind_param('isiissis', $arrangementsnummer, $navn, $telefon, $bookingtal, $email, $besked, $epoc, $ip );
$stmt->execute();
$stmt->close();
}
else
{
echo "Der er dersværre opstået en fejl: " . $mysqli->error;
}
if($stmt=$mysqli->prepare('SELECT `restpladser` FROM `arrangementer` WHERE `arrangementsnummer`=?'))
{
$stmt->bind_param('i', $arrangementsnummer);
$stmt->execute();
$stmt->bind_result($restpladser_gammel);
$stmt->fetch();
$stmt->close();
}
$restpladser_ny=($restpladser_gammel-$bookingtal);
if($stmt=$mysqli->prepare('UPDATE `arrangementer` SET `restpladser`=? WHERE `arrangementsnummer`=?'))
{
$stmt->bind_param('ii', $restpladser_ny, $arrangementsnummer);
$stmt->execute();
$stmt->close();
}
}
else
{
echo "Du har brugt ulovlige tegn i et eller flere felter!";
}
}
?>