Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php mysqli准备语句删除查询问题_Php_Mysql_Mysqli_Prepared Statement - Fatal编程技术网

php mysqli准备语句删除查询问题

php mysqli准备语句删除查询问题,php,mysql,mysqli,prepared-statement,Php,Mysql,Mysqli,Prepared Statement,我已经制作了一个页面来删除我网站的不同元素,但由于某些原因它不起作用。。。事件,尽管我将fMenu设置为i-整数,因为它是。 当我运行下面的代码时,它会给出: 致命错误:在C:\Users\joonas\Desktop\Le Kerouac\root\admin\remove.php中的非对象上调用成员函数bind_param() 代码(PHP): include_once('../php/connDbPrepared.php'); mysqli_set_字符集($mysqli,'utf8');

我已经制作了一个页面来删除我网站的不同元素,但由于某些原因它不起作用。。。事件,尽管我将
fMenu
设置为i-整数,因为它是。 当我运行下面的代码时,它会给出:

致命错误:在C:\Users\joonas\Desktop\Le Kerouac\root\admin\remove.php中的非对象上调用成员函数bind_param()

代码(PHP):

include_once('../php/connDbPrepared.php');
mysqli_set_字符集($mysqli,'utf8');
//防mysql注入注意事项
$menu=mysqli\u real\u escape\u字符串($mysqli$menu);
$sql=“从fMenu=?”所在的菜单中删除”;
$stmt=$mysqli->prepare($sql);
$stmt->bind_参数(“i”,$menu);
如果($stmt->execute())
{
$stmt->close();
回声'
replace(“../admin/admintable.php?page=main&message=removesuccesmenu”);
';
}
其他的
{
回声'
$(文档).ready(函数()
{
$(“#屏幕封面”)。幻灯片切换(“慢”);
$(“#关闭弹出窗口”)。单击(函数()
{
$(“#屏幕封面”)。幻灯片切换(“慢”);
设置超时(重置第600页);
});
});
函数resetPage()
{
replace(“../admin/admintable.php?page=main”);
}

Le menu n'a paséte enleveée!原因:Erreur'.mysqli_errno($mysqli)。“:”.mysqli_error($mysqli)。”

'; }
正确的函数名不是
bind_param()

改变

$stmt->bind_param("i", $menu);


这将消除您收到的错误消息。然后您需要修复SQL语句。

mysql中没有REMOVE关键字,请使用DELETE:


从fmenu=?

菜单中删除他/她正在使用的是MySQLi,而不是PDO。是的。只是查询由于语法错误而失败。啊,你是对的。我的大脑只是去了PDO。投反对票是可以理解的。不知何故,我现在觉得自己是个坏人:斯戈塔以某种方式保持了网站的质量。我在这篇文章上的净变化是0,所以请不要难过。我想删除我的帖子,但我还没有赢得“同侪压力”徽章>>只是想推荐该徽章:)加上一条评论:)你的脚本缺少错误处理。使用错误处理,您可能会很快发现错误。如果您不愿意测试对mysqli函数/方法的每次调用的返回值,至少激活异常。看见
$stmt->bind_param("i", $menu);
$stmt->bindParam("i", $menu);