私はPHPを初めて使用し、複数のチェックボックスの値をデータベースに送信する方法を探しています。今のところ、データベースの値が1の場合はチェックボックスがチェック済みとして表示され、そうでない場合はチェックボックスがオフになります。
以下は私が持っている現在のコードです。
<?php
$query = "SELECT * FROM users_achievements_xbox WHERE user_id = '$userID' && game_id = '$gameID' ORDER BY achievement_id ASC";
$result = mysql_query($query);
while($row = mysql_fetch_assoc($result)) { // Start looping table row
$userID = $row['user_id'];
$gameID = $row['game_id'];
$achievementID = $row['achievement_id'];
$achievementName = $row['achievement_name'];
$achievementDescription = $row['achievement_description'];
$achievementValue = $row['achievement_value'];
$check = mysql_query("SELECT * FROM users_achievements_xbox WHERE user_id = '$userID' && game_id = '$gameID' && achievement_id = '$achievementID'");
$row2 = mysql_fetch_assoc($check);
$achievement_locked = $row2['achievement_locked'];
if($achievement_locked == "0")
{
$checked = 'checked="checked"';
}
else
{
$checked = "";
}
?>
<tr align="center" bgcolor="#eeeeee">
<td> <img src="images/achievements/<?php echo $gameID; ?>/<?php echo $achievementID; ?>.jpg" /> </td>
<td> <?php echo $achievementName; ?> </td>
<td> <?php echo $achievementDescription; ?> </td>
<td> <?php echo $achievementValue; ?> </td>
<td> <input type="checkbox" name="checkbox" value="0" <?php echo $checked ?> /> </td>
</tr>
<?php
} // end of while loop
?>
issetを介してそれを実行しようと考えていましたが、ループされた送信ボタンは必要ありません。そのためのフォームでチェックボックスをラップする方法が見つからないようですが、その方法ですばやくテストしたところ、「achievement_locked」のすべての値が"選択したチェックボックスのみをチェックした場合は0に、チェックしていない場合は1に変更したい場合、データベースで0になりました。
助けてくれてありがとう!