2015-07-03 40 views
0

試圖製作一個簡單的數據庫和表單來收集數據。我正在嘗試增加表列中的值,但不知道如何告訴sql更新基於單選按鈕的id值的列。任何幫助都會很棒。使用單選按鈕ID更新數據庫列

id |男性|女

1 | 5 | 3

形式:

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> 

<fieldset> 
<legend>Gender</legend> 
<div> 
<input type="radio" name="gender" id="male" value="1" /><label for="male">Male</label><br /> 
<input type="radio" name="gender" id="female" value="1" /><label for="female">Female</label><br /> 
</div> 
</fieldset> 
<fieldset> 
<div> 
<label for="submit">Submit the form</label> 
<input type="submit" name="submit" id="submit" value="Send your Input" /> 
</div> 
</form> 

PHP數據庫更新:

$query = "UPDATE table SET x = x + 1 WHERE id = '1'"; 
$q = mysql_query($query); 

環視我一直都試圖用這樣的事情,但不能似乎得到被拉到檢查無線電值。想想我從表格中遺漏了一些東西來說明已經選中了哪個單選按鈕,並在提交後發佈。

$selected_radio = $_GET['id']; 
$query = "UPDATE table SET $selected_radio = $selected_radio + 1 WHERE id = '1'"; 
$q = mysql_query($query); 

回答

1

您必須通過$ _ POST,而不是_GET $ ... BTW內$ _ POST [「性別」],提交後,你的PHP腳本應接受「值」中定義的值屬性來獲得$ selected_radio從輸入無線電所以..改變數值:

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> 

<fieldset> 
<legend>Gender</legend> 
<div> 
<input type="radio" name="gender" id="male" value="5" /><label for="male">Male</label><br /> 
<input type="radio" name="gender" id="female" value="3" /><label for="female">Female</label><br /> 
</div> 
</fieldset> 
<fieldset> 
<div> 
<label for="submit">Submit the form</label> 
<input type="submit" name="submit" id="submit" value="Send your Input" /> 
</div> 
</form> 

/*Then, you could increment your x column where the row id = 5 (male) or 3 (female)*/ 

$selected_radio = $_POST['gender']; 
$query = "UPDATE table SET x = x + 1 WHERE id = '" . $selected_radio . "'"; 
$q = mysql_query($query); 
+0

感謝$ selected_radio = $ _POST ['gender'];部分是我需要的所有工作 – Bosc

1

你應該讓你這樣的單選按鈕:

<input type="radio" name="gender" id="gender" value="female" /> 
<input type="radio" name="gender" id="gender" value="male" /> 

$ selected_radio = isset($ _ POST [ '性別']);

$ query =「UPDATE table SET $ selected_radio = $ selected_radio + 1 WHERE id ='1'」; $ q = mysql_query($ query);