非常简单的SQL中的引号问题

时间:2012-01-24 作者:perikut

我只想在帖子中执行一个SQL语句(我正在使用EXEC-PHP小部件)。

问题是当我想做以下事情时引用

$my\\u name=\'hello\'

“从表中选择*,其中名称=\'$my\\u name\'”;

获取错误的报价。。。。从name=\'hello\'

我试过streepslashes\\u deep、addslashes、stripslashes。。。

我觉得不应该这么难。。。也许这不是我最好的一天

有什么帮助吗?

谢谢

3 个回复
SO网友:djb

如果您正在与WordPress数据库本身通信,请尝试使用$wpdb->prepare() 在选择字符串上,然后将其作为$wpdb->query() - 它应该为您设置格式。

进一步阅读:Codex

SO网友:Ethan Seifert

也许插件正在修改您的单引号。双引号在SQL中有效。如果使用双引号并将其转义,会发生什么情况?

e、 g.“从表中选择*,其中名称=\\”$我的名称\\“;

SO网友:Neil Davidson

尝试分离和连接字符串:

\'select * from Table where name="\'.$my_name.\'"\'; 

结束