0

私の先生は、ラジオボタンの名前を表示するには for ループを使わなければならないと言いました。それはしますが、ラジオボタンがチェックされた回数はカウントしません。したがって、投票は送信されません。これは学校のプロジェクト用です。コードは次のとおりです。

if(isset($_POST['verzenden'])) {
$name= "item_" . $data2['id'];

for($name = item_0; $name <= item_28; $name++){
$query="UPDATE optie SET stemmen= stemmen + 1 WHERE id= '$name'";
if(mysql_query($query)){
echo"Stem opgeslagen! <br /><br/>";
} else {
echo"Fout tijdens opslaan stem!<br /><br/>";
} }}

$result = mysql_query("SELECT * FROM poll");



while($data = mysql_fetch_assoc($result)){

echo"<b>" . $data['vraag'] . "</b><br/><br />";

echo"<form method='post' action=''>";
echo "<fieldset>";

$result2 = mysql_query("SELECT * FROM optie WHERE poll ='" . $data['id'] . "'");
while($data2 = mysql_fetch_assoc($result2)){

echo "<input type='radio' name='item_" . $data2['id'] . "' value='" . $data2['id'] . "'/>" . $data2['optie'] . "<br />";
}

echo"<br/>";
echo"</fieldset>";
}
?>

</form>

<?php

誰かが私を助けてくれることを願っています、

さようならキャサリン

4

1 に答える 1

1

これが問題の原因です:

for($name = item_0; $name <= item_28; $name++){
$query="UPDATE optie SET stemmen= stemmen + 1 WHERE id= '$name'";

指定した方法では、$nameインクリメントできません。次のような整数を使用する必要があります。

for($name = 0; $name <= 28; $name++){
$query="UPDATE optie SET stemmen= stemmen + 1 WHERE id= 'item_$name'";
于 2013-05-26T02:42:26.183 に答える