gpt4 book ai didi

php - 表搜索的正确语法 (mysql)(php)

转载 作者:行者123 更新时间:2023-11-29 04:42:34 25 4
gpt4 key购买 nike

我想知道使用 mysql_query 搜索表以查找与“键”匹配的内容的正确语法是什么。

例如,假设我要搜索客户。并假设这是一个非用户输入。 I.E 从脚本运行。

$client_search = mysql_query("SELECT * FROM `clients` WHERE `client_name LIKE '%".$_POST['key']."%' OR `crmurl` LIKE '%".$_POST['key']."%' ORDER BY `client_name`") or die(mysql_error());
$fetch_client = mysql_fetch_array($client_search);

如果我运行这样的程序,我会被告知语法不正确,更具体地说,错误是..

 `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 'crmurl` LIKE '%Fake%' ORDER BY `client_name`' at line 1` 

但是我无法发现任何问题,有没有眼尖的人可以提供帮助。

注意:拜托,我真的不想让 5 多个人告诉我 mysql 是如何过时的,它应该使用 PDO::,我知道,但它是一个快速脚本,不需要用户输入并且已经清理了表数据。

最佳答案

由于您将整个查询括在双引号内,因此无需附加 sql 字符串,因为在双引号内所有 PHP 变量都将被替换为相应的值。此外,您在字段名 client_name 中遗漏了一个反引号。

$client_search = mysql_query("SELECT * FROM `clients` WHERE `client_name LIKE '%".$_POST['key']."%' OR `crmurl` LIKE '%".$_POST['key']."%' ORDER BY `client_name`") or die(mysql_error());
missing there ^

将查询更改为

$client_search = mysql_query("SELECT * FROM `clients` WHERE `client_name` LIKE '%$_POST['key']%' OR `crmurl` LIKE '%$_POST['key']%' ORDER BY `client_name`") or die(mysql_error());

关于php - 表搜索的正确语法 (mysql)(php),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25523117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com