MYSQLI :: prepare(),使用占位符时出错:某物 [英] MYSQLI::prepare() , error when used placeholder :something

查看:102
本文介绍了MYSQLI :: prepare(),使用占位符时出错:某物的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用mysqli,我看到了一些使用占位符的示例,例如:something和?

hi im using mysqli and i saw some examples using placeholder like :something and ?

我什么时候使用过的?它的工作,但当我使用:something这样的查询

when i used ? its working, but when i used :something in query like this

$ sql =将食物插入食物(food_name) VALUES(:food_name)

$sql = INSERT INTO food(food_name) VALUES(:food_name)

然后我致电

$ mysqli_object-> prepare($ sql);

$mysqli_object->prepare($sql);

错误消息听起来像这样

用户错误!你有一个错误 SQL语法;检查手册 对应于您的MySQL服务器 使用正确语法的版本 在行':food_name)"附近

User Error! You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':food_name)' at line

但是当我使用时?作为占位符,一切正常,我使用了PHP 5.3.1和MySQL 5.1.41

but when i used ? as the placeholder, everything working well, i used PHP 5.3.1 and MySQL 5.1.41

我错过了某个地方,感谢您的任何帮助

am i missed somewhere, any help will be appreciated thanks

推荐答案

mysqli不支持命名占位符.

mysqli does not support named placeholders.

PDO 使用(请注意,每个查询只能使用一个命名的占位符.它们并不太有用.)

(Careful, you can only use a named placeholder once per query. They aren't too incredibly useful.)

这篇关于MYSQLI :: prepare(),使用占位符时出错:某物的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆