MySQL仅返回一行

我有这个简单的PHP代码:


$query = mysql_query("SELECT `title`, `url_title` FROM `fastsearch` WHERE `tags` LIKE '%$q%' LIMIT 5");

    $query2 = mysql_fetch_assoc($quer);

    print_r($query2);

它仅返回以下内容:


Array ( [title] => Kill Bill Vol 1. [url_title] => kill_bill_vol_1 )

我的表中有3500多行,并且在PhpMyAdmin中运行SQL效果很好。


慕尼黑8549860
浏览 739回答 3
3回答

一只甜甜圈

$query = mysql_query("SELECT `title`,                             `url_title`                        FROM `fastsearch`                       WHERE `tags`                            LIKE '%$q%'                       LIMIT 5");while ($row = mysql_fetch_assoc($query)) {    print_r($row);}您$query的示例拼写错误mysql_fetch_assoc()每次调用FALSE时以及行外时都会返回一行。通过在条件中为其分配变量来利用它,以发挥您的优势。在while()循环中,$row将是当前行。

慕慕森

是的,您没有正确获取结果。mysql_fetch_assoc()一次只返回一行。使用循环读取所有行。$query = mysql_query("SELECT `title`, `url_title` FROM `fastsearch` WHERE `tags` LIKE '%$q%' LIMIT 5");$resultSet = array();while ($cRecord = mysql_fetch_assoc($query)) {  $resultSet[] = $cRecord;}
打开App,查看更多内容
随时随地看视频慕课网APP