如果選中,我無法將列更新爲yes。雖然我沒有收到任何錯誤。我究竟做錯了什麼?我已經嘗試了很多方法,包括將數組放入和退出引號。我知道如何通過一個帶有電子郵件地址的表單,而不是複選框。我也知道如何使用複選框從數據庫中刪除行。但不更新......使用複選框更新數據庫列
<?php
$id = $_GET['id'];
$select = mysql_query("SELECT * FROM volsMain WHERE ID = '$id'");
$data = mysql_fetch_array($select);
?>
<?php
$query="SELECT * FROM volsMain ORDER BY shift_times, position";
$result = mysql_query($query) or die(mysql_error());
while ($row = mysql_fetch_array($result)){
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<input type="hidden" name="id" value="<?php echo $id; ?>" />
<input type="checkbox" name="checkinsat" value="yes"<?php
if($data['checkinsat'] == 'yes') echo 'checked'; ?>/>
<input type="submit" >
</form>
<?php
if ($row['saturday'] === 'A.M.') {
echo '<span class="amShift">';
} else if ($row['saturday'] === 'P.M.') {
echo '<span class="pmShift">';
} else {
echo '<span>';
}
echo "SATURDAY:" . $row['saturday'] . '</span><br />';
if ($row['sunday'] === 'A.M.') {
echo '<span class="amShift">';
} else if ($row['sunday'] === 'P.M.') {
echo '<span class="pmShift">';
} else {
echo '<span>';
}
echo "SUNDAY:". $row['sunday'] . '</span><br />';
echo "<br />SHIRT SIZE:<h2>" . $row['shirt'] . "</h2>";
echo "<br />VOLUNTEER NAME:<h2>" . $row['agreeName'] . "</h2>";
echo "<p>Assigned as a volunteer for:<br />" . $row['position'] . "</p>";
echo "<p>Shift times are scheduled for:<br />" . $row['shift_times'] . "</p>";
echo "<p>Shifts have been confirmed:<br />" . $row['confirmed'] . "</p>";
echo "<p>Checked in Friday:<br />" . $row['checkinfri'] . "</p>";
echo "<p>Checked in Saturday:<br />" . $row['checkinsat'] . "</p>";
echo "<p>Checked in Sunday:<br />" . $row['checkinsun'] . "</p>";
}
?>
<?php
$checkSAT = isset($_POST['checkinsat']) ? "yes" : "no";
$updateSat = mysql_query("UPDATE volsMain SET checkinsat = '$checkSAT' WHERE ID = '$id'");
$query = mysql_query($updateSat);
$result = mysql_query($query);
echo "<p>" . print_r($checkSAT) . "</p>";
?>
試試這個 $ checkSAT =($ _POST ['checkinsat'] =='1')? 「是」:「不」;並在查詢中檢查你的變量 $ query = mysql_query(「UPDATE volsMain SET checkinsat ='$ checkSAT'WHERE ID ='$ id'」); –
我已經修復了這個問題,但它仍然沒有將'checkinsat'列更新爲'是' – Commandrea
嘗試打印$ _POST,看看您在'checkinsat'鍵中有什麼價值。 –