我知道这和其他很多帖子都是一样的,但我无法想象它!PHP - mySQL“like”query return nothing
我的代码看起来是这样的:
$i=0;
$shelves = array();
$shelves['position'] = array();
$query = "select id, cat_id, book_title, writer, publisher, issue_year, copies, abstract from library where $table like '%$search_param%'";
$result = mysql_query($query);
while ($data = mysql_fetch_assoc($result)) {
error_log($data['id']);
$shelves['position'][$i]['id'] = $data['id'];
$shelves['position'][$i]['cat_id'] = $data['cat_id'];
$shelves['position'][$i]['book_title'] = $data['book_title'];
$shelves['position'][$i]['writer'] = $data['writer'];
$shelves['position'][$i]['publisher'] = $data['publisher'];
$shelves['position'][$i]['issue_year'] = $data['issue_year'];
$shelves['position'][$i]['copies'] = $data['copies'];
$shelves['position'][$i]['abstract'] = $data['abstract'];
++$i;
}
error_log(count($shelves['position']));
而且因为有其他的职位像这样的音调我想他们的解决方案:
$query = sprintf("select id, cat_id, book_title, writer, publisher, issue_year, copies, abstract from library where %s like'%%%s%'",mysql_real_escape_string($table),mysql_real_escape_string($search_param));
或者类似的东西:
$query = "select id, cat_id, book_title, writer, publisher, issue_year, copies, abstract from library where $table like '%{$search_param}%'";
我也尝试运行查询没有动态变量只是文本和我得到了同样的事情。
$query = "select id, cat_id, book_title, writer, publisher, issue_year, copies, abstract from library where book_title like '%lord%'";
似乎没有任何工作。
我已经在mysql工作台上测试了我的查询,它的功能就像一个魅力!
在所有三个查询中,我从来没有得到第一个error_log的日志,第二个查询每次都对我大喊大叫!
请问有人照明的方式吗?
$表中有什么? – swapnesh
你会得到什么结果? – Tom
让我们做一些简单的事情,首先是'mysql_query($ query)或者死亡(mysql_error();''这样我们就可以看到是否有任何错误。 – DevZer0