我想在網頁(用php編寫)上表示「是」和「否」的兩個單選按鈕。當我加載頁面時,我希望它從MySQL數據庫獲取一個值並設置相應的單選按鈕。當我點擊另一個按鈕時,我希望它更新數據庫並重新加載頁面。以HTML格式設置單選按鈕的mysql值
我想用一個簡單的html表單來做到這一點,但沒有運氣。我至今(即不工作的代碼:(是:
if (!isset($_POST['submit'])) {
$sql = "SELECT challenge_me FROM contestants WHERE id=$id";
$res = (mysql_fetch_assoc(mysql_query($sql, $db)));
$challenge_me = $res["challenge_me"];
}else{
$sql = "UPDATE contestants SET challenge_me='" . $_POST['YesNo'] . "' WHERE id='$id'";
if(!mysql_query($sql, $db))
echo mysql_error(), "<br/>Query '$sql'";
$challenge_me = $_POST['YesNo'];
}
echo'<form method="post" action="' . $PHP_SELF . '">';
echo '<input type="hidden" name="submit" value="submit">';
if($challenge_me == 1){
echo'<input type="radio" name="YesNo" value="1" onClick="this.form.submit();" checked>Yes ';
echo'<input type="radio" name="YesNo" value="0" onClick="this.form.submit();">No ';
}else{
echo'<input type="radio" name="YesNo" value="1" onClick="this.form.submit();">Yes ';
echo'<input type="radio" name="YesNo" value="0" onClick="this.form.submit();" checked>No ';
}
echo'</form>';
不是您的問題的答案,但您不應該使用字符串連接來構建SQL查詢。您的腳本當前容易受到SQL注入攻擊,基於使用'$ _POST ['YesNo']'沒有至少逃脫它或使用MySQL語句 – Rob 2011-05-10 22:09:13
它怎麼不工作?發生了什麼? – thefugal 2011-05-10 22:12:40
嗯,似乎我解決了它。它不工作,如果隱藏的帖子被命名爲「提交「當我點擊rad時,阻止了表單做任何事情io按鈕。將其重命名爲其他方式運行良好... 並感謝關於sql注入的評論! – faximan 2011-05-11 05:41:26