php – 没有显示MySQL查询结果的第一行

前端之家收集整理的这篇文章主要介绍了php – 没有显示MySQL查询结果的第一行前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
以下 PHP代码工作正常,尽管一个非常奇怪的行为.第一项始终被排除在外.让我用一个例子说清楚.想象一下,我在db中为列srl_loc提供了以下项目:

>巴黎(75)
>巴黎(75001)
>巴黎(75002)
>巴黎(75003)

如果$term =“Paris”,那么第一个项目“Paris(75)”将被省略输出. PHP文件显示以下内容

>巴黎(75001)
>巴黎(75002)
>巴黎(75003)

希望有人能提供帮助.提前感谢您的回复.干杯.马克.

我的PHP

@H_404_16@<?PHP header('Content-Type: text/html; charset=utf-8'); require("../inc/connect.inc.PHP"); MysqL_set_charset('utf8'); $term = MysqL_real_escape_string($_GET['term']); $result = MysqL_query('SELECT * FROM search_loc WHERE srl_loc LIKE "' . $term . '%"'); $row=MysqL_fetch_assoc($result); $return = array(); while($row=MysqL_fetch_assoc($result)){ array_push($return,array('value'=>$row['srl_loc']));} echo(json_encode($return)); ?>
你在$return =之前调用MysqL_fetch_assoc两次,然后每次循环调用一次.第一个被丢弃,因此丢失了一行.

所以,它应该是:

@H_404_16@<?PHP header('Content-Type: text/html; charset=utf-8'); require("../inc/connect.inc.PHP"); MysqL_set_charset('utf8'); $term = MysqL_real_escape_string($_GET['term']); $result = MysqL_query('SELECT * FROM search_loc WHERE srl_loc LIKE "' . $term . '%"'); $return = array(); while($row=MysqL_fetch_assoc($result)){ array_push($return,array('value'=>$row['srl_loc']));} echo(json_encode($return)); ?>

猜你在找的PHP相关文章