Php 用于从数组中提取数据的while循环不起作用
我已经写了这段代码,我无法找出while循环不工作的原因。它正在执行if{…},但是if内的while循环不起作用用下面的代码更改代码Php 用于从数组中提取数据的while循环不起作用,php,mysql,Php,Mysql,我已经写了这段代码,我无法找出while循环不工作的原因。它正在执行if{…},但是if内的while循环不起作用用下面的代码更改代码 $sub_id=$_POST['sub_id']; $sql_unit_list="select link_id,unit,file_name from links where sub_id='$sub_id'"; $res_unit_list=mysql_query($sql_unit_list); if($res_unit_list) { whi
$sub_id=$_POST['sub_id'];
$sql_unit_list="select link_id,unit,file_name from links where sub_id='$sub_id'";
$res_unit_list=mysql_query($sql_unit_list);
if($res_unit_list)
{
while($data_list=mysql_fetch_array(mysql_query($sql_unit_list)))
{
echo $data_list[0];
}
}
希望这能奏效。你试过这样做吗
$sub_id=$_POST['sub_id'];
$sql_unit_list="select link_id,unit,file_name from links where sub_id='$sub_id'";
$res_unit_list=mysql_query($sql_unit_list);
if($res_unit_list)
{
while($data_list=mysql_fetch_array($res_unit_list))
{
echo $data_list[0];
}
}
或者将mysql_fetch_数组放入mysql_fetch_assoc重复查询。相反,您应该使用结果本身
$sql="SELECT * FROM TABLE";
$result = mysql_query($sql)
if($result == true){
while($rows = mysql_fetch_array($result)){
echo $rows[0];//single row
}
}
如果它不起作用,请尝试以下两种方法:
1在while循环中回显一个测试,看看会发生什么。
2手动执行sql语句,查看是否得到行
除此之外,您还可以使用过时的旧mysql函数。您应该研究一下更新、更安全的函数,如mysqli或pdo。代码语法不正确 试试这个
while($data_list=mysql_fetch_array($res_unit_list)){...
var_dump$data_列表;并查看得到的结果..是否在phpmyadmin向导中手动运行查询?它是否会抛出一些记录?是的,查询很好
$sub_id=$_POST['sub_id'];
$sql_unit_list="select link_id,unit,file_name from links where sub_id='$sub_id'";
$res_unit_list=mysql_query($sql_unit_list);
if($res_unit_list)
{
while($data_list=mysql_fetch_array($res_unit_list))
{
echo $data_list[0];
}
}