2013-11-01 60 views
0

我正在嘗試設置一個投票過程,其中有20組兩個單選按鈕,您可以從中進行選擇。然後當點擊一個「投票」按鈕時,我可以收集所選按鈕的值並將+1加到它們各自的數據庫單元格中。使用單選按鈕增加MySql數據庫中的值

我新的MySQL和我在努力...

數據庫表的樣子..

ID  Park   Votes 
1  Zion   0 
2  Grand Canyon 0 
3  Arches  0 
4  Canyonlands 0 
5  Yosemite  0 
6  Yellowstone 0 

HTML表單

<form action="/databases/save.php" method="post"> 
    <input type="radio" name="match1" value="1" />Zion 
    <input type="radio" name="match1" value="1" />Grand Canyon 
    <input type="radio" name="match2" value="1" />Arches 
    <input type="radio" name="match2" value="1" />Canyonlands 
    <input type="radio" name="match3" value="1" />Yosemite 
    <input type="radio" name="match3" value="1" />Yellowstone 
    <input type="image" src="/graphics/logo.png" /> 
</form> 

而且save.php文件

<?php 
    if (isset($_POST['match1'])){ 
     $match1 = $_POST['match1']; 
     mysql_query("INSERT INTO results() VALUES ('1')"); 
    } 
    ?> 

如何獲得選定的收音機並將+1應用於正確的表格單元,我就會被拋棄。在此先感謝

回答

1

您的HTML對於radio輸入不正確。如果您希望用戶只選擇一個公園,則所有輸入必須具有相同的名稱。使用無線輸入的value屬性存儲公園的ID(從MySQL表):

<form action="/databases/save.php" method="post"> 
    <input type="radio" name="match" value="1" />Zion 
    <input type="radio" name="match" value="2" />Grand Canyon 
    <input type="radio" name="match" value="3" />Arches 
    <input type="radio" name="match" value="4" />Canyonlands 
    <input type="radio" name="match" value="5" />Yosemite 
    <input type="radio" name="match" value="6" />Yellowstone 
    <input type="image" src="/graphics/logo.png" /> 
</form> 

該輸入的選定值將被否則返回$_POST['match']如果選擇一個項目$_POST['match']不會完全可以設置。

所以你save.php頁面上,你可以更新你的表像這樣(假設你的表被命名爲「parks_table」):

<?php 
if (isset($_POST['match'])) { 
    mysql_query('UPDATE `parks_table` SET Votes = Votes + 1 WHERE ID = '.$_POST['match']); 
} 
?> 

因爲你似乎與PHP和MySQL首發請閱讀:Why shouldn't I use mysql_* functions in PHP?

+0

你的回答比較完整和準確。我會撤回我的。 – mseifert

-1
<button type="submit" name="vote" id="vote" value=" ' . $row['candidate_position'] . ' " class="btn btn-success">CAST VOTE</button> 
    <?php 

$vote = $_POST['vote']; 

if (isset($_POST['vote'])) { 
mysqli_query($con, "UPDATE tbCandidates SET candidate_votes=candidate_votes+1 WHERE position_id='$vote'"); 
echo "string"; 
} 


mysqli_close($con); 
?> 
相關問題