PHP删除产品/ID
所以我有这个:PHP删除产品/ID,php,button,Php,Button,所以我有这个: echo " <form action='users/delete.php' method='post'> <input type='hidden' name='ProductID' value='".$row->ProductID."' /> <input type='submit' value='Delete' /> </form> "
echo "
<form action='users/delete.php' method='post'>
<input type='hidden' name='ProductID' value='".$row->ProductID."' />
<input type='submit' value='Delete' />
</form>
";
echo”
";
这在网上商店的每个项目下都有:
这是可行的,但是每当我按下按钮,表就不会被删除,这是我的delete.php
<?php
define('_HOST_NAME_', 'localhost');
define('_USER_NAME_', 'root');
define('_DB_PASSWORD', '#####');
define('_DATABASE_NAME_', 'ws_webshop');
//PDO Database Connection
try {
$databaseConnection = new PDO('mysql:host='._HOST_NAME_.';dbname='._DATABASE_NAME_, _USER_NAME_, _DB_PASSWORD);
$databaseConnection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
// create PDO instance; assign it to $db variable
$sql = "DELETE FROM `tbl_products` WHERE `ProductID` = :ProductID LIMIT 1";
$smt = $databaseConnection->prepare($sql);
$smt->bindParam(':ProductID', $_POST['ProductID'], PDO::PARAM_INT);
$smt->execute();
header('Location: ../webshop.php');
行中的
$sql=“从'tbl\u products'中删除,其中'ProductID'=:ProductID LIMIT 1”代码>
尝试更改为:
$sql=“从'tbl\u products'中删除,其中'ProductID'=ProductID LIMIT 1”代码>
没有接近产品ID限制1的“:
”。
在MySQL控制台中尝试一下 您的$row
用于对象,但您有一个数组。因此,要么将获取更改为:
->fetch(PDO::FETCH_OBJ);
-
或将您的用法更改为:
echo "
<form action='users/delete.php' method='post'>
<input type='hidden' name='ProductID' value='".$row['ProductID'] . "' />
<input type='submit' value='Delete' />
</form>
";
echo”
";
尝试从查询中删除限制1。如果将查询放入try
,会发生什么情况?$row->ProductID
是否也已填充,可能这是一个数组?请在打开PHP标记后立即在文件顶部添加错误报告,例如注意:在第120行的F:\xampp\htdocs\new\3n\webshop.PHP中尝试获取非对象的属性修复了此问题,将值更改为:“$row['ProductID]”谢谢各位