1

我有一个奇怪的问题,请看一下这个查询:

select * from myfriend where name like "%n%";

在 phpMyAdmin 上执行此查询时,查询返回了正确的结果,但是当使用 php 执行时,没有返回结果。

请注意这个查询在 drupal 6 中执行。

char“n”和PHP有什么问题?

4

3 回答 3

3

百分号在 Drupal 6 查询中用作占位符,因此您需要对它们进行转义:

$query = db_query('select * from myfriend where name like "%%n%%"');
于 2013-01-28T13:43:07.293 回答
1
$searchChar = "n";

$query = "SELECT * FROM `myfriend` WHERE `name` LIKE '%" . $searchChar . "%'";

然后$query在您的语句中使用该变量。

例如:

$mysql->query($query);

mysql_query($query);

于 2013-01-28T11:48:29.057 回答
0

你的查询很完美。简要介绍一下。您可以检查从 php 到 mysql 的数据库连接是否正确。您可以从 php 文件中回显该查询并运行 phpmyadmin,如果输出正确,那么肯定会出现数据库连接问题。

php 中的任何字符绝对没有问题。

于 2013-01-28T12:39:56.510 回答