2 回答

TA貢獻1801條經驗 獲得超8個贊
作為最簡單的解決方法:
<?php
include_once('mysql.php');
// make sure that form is submitted
if (isset($_POST['id'])) {
$ins = "DELETE FROM MyGuests WHERE id=" . $_POST['id'] . " LIMIT 1";
if ($conn->query($ins) === TRUE) {
echo "Record deleted successfully";
} else {
echo "Error: " . $ins . "<br>" . $conn->error;
}
}?>
另請注意,將原始 /值傳遞到查詢文本中是不安全的。由于您沒有提到您使用的API(PDO或mysqli),因此我在查詢中串聯了值,但您不得這樣做。盡快移至預準備語句。$_POST$_GET$_POST
預準備語句版本(我假設您根據比較使用):mysqli
$ins = "DELETE FROM MyGuests WHERE id=? LIMIT 1";
$st = $conn->prepare($ins);
$st->bind_param('i', $_POST['id']);
if ($st->execute() === TRUE) {
echo "Record deleted successfully";
} else {
echo "Error: " . $ins . "<br>" . $conn->error;
}

TA貢獻1887條經驗 獲得超5個贊
$id
未定義。您正在提交表單,因此它可能應該是:DELETE FROM MyGuests WHERE id={$_POST['id']}
你也不應該需要 LIMIT 1。我想它總是只刪除1條記錄。
- 2 回答
- 0 關注
- 115 瀏覽
添加回答
舉報