1
こんにちはみなさんこんにちは 質問がありますか?その前に私のコードがあります。ラジオボタンを使用してMySQLのデータを更新するには?
<html>
<center>
<font size="2" face = "century gothic">
<?php
$con=mysqli_connect("localhost","root","","election2016");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM candidate_info");
echo "<table border='1'>
<tr>
<th>Candidate Name</th>
<th>Position</th>
<th>Vote</th>
<th>Number of Votes</th>
</tr>";
while ($row = mysqli_fetch_array($result)) {
echo "<tr>";
echo "<td>" . $row['CandidateName'] . "</td>";
echo "<td>" . $row['Position'] . "</td>";
echo "<td><input type='radio' name='candidateid'/>";
echo "<td>" . $row['NumberofVotes'] . "</td>";
}
echo "</table>";
mysqli_close($con);
?>
<br>
<br>
<form method = "post" action = "<?php $_PHP_SELF ?>">
<input name = "update" type = "submit" id = "update" value = "Update">
</form>
</center>
</font>
</html>
<?php
if(isset($_POST['update'])) {
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn) {
die('Could not connect: ' . mysql_error());
}
$candidateid = $row['candidateid'];
$sql = "UPDATE candidate_info SET numberofvotes = '1' WHERE candidateid = $candidateid" ;
mysql_select_db('election2016');
$retval = mysql_query($sql, $conn);
if(! $retval) {
die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
mysql_close($conn);
}
?>
私のコードの出力ここでは候補、位置、ラジオボタンのリストを表示します。
ここで私のエラーは、ラジオボタンを選択してボタンの更新をクリックするとnumberofvotesフィールドに1を入れたいが、更新しないということです。私のコードで何が間違っていますか?
ご協力いただければ幸いです。 TYそんなに
私はこのコードをチェックして動作しています。問題は、フォームを投稿するときに$ row配列がないことです。だから、あなたは隠されたフィールドを持つidをページに送る必要があります。私はあなたのコードの仕事を得るために何をしたのですか? – DevMan
私はコードを試していますが、動作しません。私は未定義のインデックス –
のエラーを取得します@AlexiusjoeCoronelあなたのデータベース構造を教えてくださいできますか?コードで使用するフィールド名に間違いがあり、コード内のフィールド名の1つ以上がデータベースのフィールド名と同一ではありません。このため、未定義のインデックスエラーが発生します。 – DevMan