PHP while循环不打印所有MySQL记录

PHP while循环不打印所有MySQL记录,php,mysql,Php,Mysql,我使用一个PHP While()循环在菜单中显示SQL查询的结果。SQL查询应返回4个结果,但下拉菜单中仅显示3个选项 我暂时修复了这个问题,添加了一条不需要显示的第五条记录 有人知道如何正确地解决这个问题吗? while()循环似乎短停了1条记录 $query = "SELECT * FROM products WHERE child = '1' AND code = '".$code."' ORDER BY description"; $products = mysql_query($que

我使用一个PHP While()循环在菜单中显示SQL查询的结果。SQL查询应返回4个结果,但下拉菜单中仅显示3个选项

我暂时修复了这个问题,添加了一条不需要显示的第五条记录

有人知道如何正确地解决这个问题吗? while()循环似乎短停了1条记录

$query = "SELECT * FROM products WHERE child = '1' AND code = '".$code."' ORDER BY description";
$products = mysql_query($query) or die(mysql_error()); 
while($results= mysql_fetch_array($products))
{                               
  echo '<option value="'.$results['id'].'">'.$results['description'].'</option>';
}
$query=“从产品中选择*,其中child='1'和code='”“$code.”“按说明排序”;
$products=mysql\u query($query)或die(mysql\u error());
而($results=mysql\u fetch\u数组($products))
{                               
回显'.$results['description'].';
}

希望这对您有所帮助:

本文对此进行了很好的解释,并提供了其他选项


祝你好运

尝试“从child='1'和code='”的产品中选择count(*),“$code.”“ORDER BY description”,看看它返回了多少行。我已经完成了mysql_num_行,并且显示了正确的数字,比选项数多+1。您发布的代码不应该做您描述的事情。我想冒昧地说,这不是您正在使用的实际代码,在您的实际代码中,您有一个mysql\u结果、mysql\u fetch\u行、mysql\u fetch\u数组、mysql\u fetch\u对象,或者在mysql\u查询和while循环之间的某个调用,该调用会删除第一个结果。mysql_fetch_数组不可能跳过最后一个结果。顺便说一句:你真的不应该再使用mysql扩展了,它已经被官方弃用了。相反,建议您使用MySQL或PGLE,HTML代码可能会被HTML标记的数据所破坏(例如<代码> Tularis。您是正确的,中间有一个单独的查询。谢谢。