繁体   English   中英

如何使用LIKE运算符修复SQL错误?

[英]How do I Fix SQL Error with LIKE Operator?

我正在尝试建立一个小型搜索引擎,可以浏览我网站上的文章。 到目前为止,我已经编写了PHP代码,我的服务器没有问题。 服务器确实遇到的问题是我的SQL代码,据我所知这是正确的,但它表示“语法不正确”。

我试图在该语句中添加一个PHP变量,以使其能够搜索该变量的内容,因为该内容具有表单输入。 变量(如您所见)称为$ search_input我的代码在这里:

$sql_code = "SELECT * FROM 'articles' WHERE 'tags' LIKE ‘%{$search_input}%’";

我确定我的语法有问题,但看不到哪里。 我回顾了W3schools关于WHERE子句和LIKE运算符的指南-找不到任何东西。 非常感谢您的帮助-谢谢。

  • 感谢所有帮助人员-我尝试了Des的第一篇文章,它适用于其他文章。 但是,如果我想写:PHP中的“发现以下结果”。 然后,它在数据库的每个搜索结果之后重复该操作。

并将其显示在浏览器中:

找到以下结果:

HelloWorldPrimaryTest看一下该文档具有以下标签:hello world primary

找到以下结果:

Home看一下此文档具有以下标签:home

我不希望它重复“发现以下结果:”任何人都可以帮忙吗? 非常感谢您到目前为止提供的所有帮助。

引号错误,请尝试以下操作:

$sql_code = "SELECT * FROM articles WHERE tags LIKE '%{$search_input}%'";

最好使用准备好的语句 (PDO)。

快去

$sql_code = "SELECT * FROM 'articles' WHERE 'tags' LIKE '%".$search_input."%'";

去除花括号并尝试

$sql_code = "SELECT * FROM 'articles' WHERE 'tags' LIKE '%$search_input%'";

$ sql_code =“选择*来自articles tags哪里,例如'%$ search_input%'”;

您不应该在表名或行名中使用引号,而可以将其保留为空或使用刻度( table_name

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM