亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

創建刪除 php 表單

創建刪除 php 表單

PHP
慕田峪4524236 2022-09-03 17:43:21
我在嘗試使用PHP中創建刪除表單以使用提供給客人的ID刪除數據時遇到問題。我是這種東西的新手。這是錯誤:Error: DELETE FROM MyGuests WHERE id= LIMIT 1You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'LIMIT 1' at line 1這是我的刪除.php:<?phpinclude_once('mysql.php');$ins= "DELETE FROM MyGuests WHERE id=$id LIMIT 1";if ($conn->query($ins) === TRUE) {    echo "Record deleted successfully";} else {    echo "Error: " . $ins . "<br>" . $conn->error;}?><!DOCTYPE html><html><body><a href='index.php'>Home</a><br><h2>Delete User</h2><form action="/delete.php" method="post">  Guest ID:<br>  <input type="text" name="id" >  <br><br>  <input type="submit" value="Submit"></form> </body></html>
查看完整描述

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;

}


查看完整回答
反對 回復 2022-09-03
?
慕工程0101907

TA貢獻1887條經驗 獲得超5個贊

$id未定義。您正在提交表單,因此它可能應該是:DELETE FROM MyGuests WHERE id={$_POST['id']}

你也不應該需要 LIMIT 1。我想它總是只刪除1條記錄。


查看完整回答
反對 回復 2022-09-03
  • 2 回答
  • 0 關注
  • 115 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號