php - mysql 查询(如)和 php 的问题

标签 php mysql mysql-error-1064

我正在尝试使用类似 sql 的语句,但不幸的是每次使用查询时都会出现错误。在 php 文件中我有:

$b = "SELECT Nombre, Link, Img_Pre, Precio, Descripcion, ID, Categoria, Subcategoria 
    FROM Productos WHERE Nombre LIKE \"%$a%\"";

但我收到此错误:

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 '\"%THE VALUE OF A%\"' at line 1

如果我在 phpmyadmin 上尝试相同的语句,我不会有任何错误。为什么使用 php 时会出现此错误?

谢谢!

最佳答案

LIKE 字符串中使用单引号(我相信 phpMyAdmin 在运行查询之前会神奇地将其转换为单引号):

$b = "SELECT Nombre, Link, Img_Pre, Precio, Descripcion, ID, Categoria, Subcategoria FROM Productos WHERE Nombre LIKE '%$a%'";

确保您也使用 mysql_real_escape_string() 转义了 $a,因为它可能会通过引入未转义的引号来破坏您的查询!

关于php - mysql 查询(如)和 php 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3642048/

相关文章:

php - .htaccess 404 真实路径错误

mysql - 根据列插入X次

mysql - mysql中查询TIMEDIFF的类型

Mysql Workbench无法选择外键

sql - 错误代码 1064 MySQL

php - 如何强制 Laravel 对列名使用驼峰命名法

php - 无法安装 pear

PHP basename( __DIR__ ) 在某些服务器上返回 _DIR_

sql - MySQL删除后自动递增

mysql - 连接 2 个表中的字段