第一次进入第二个循环时退出第一个循环。
$score11[]="";
$score22[]="";
$score33[]="";
$scoretotal[]="";
$org[]="";
$p=0;
$sql= "SELECT * from organization WHERE 1";
$result=mysqli_query($conn,$sql);
while($row=mysqli_fetch_assoc($result))
{
$organization_id= $row["id"];
$name[$p]=$row["name"];
$org[$p]= $row["id"];
$sql1="SELECT DISTINCT `id_u` from `user_js2` WHERE `organization`='$organization_id'";
$result1=mysqli_query($conn,$sql1);
while($row1=mysqli_fetch_assoc($result1))
{
$id_selfscore=$row1["id_u"];
echo " ". $id_selfscore. "is the id of user";
include('gamescores.php');
echo $score1. $score2. $score3;
$score11[$p]= $score11[$p]+ $score1;
$score22[$p]= $score22[$p]+ $score2;
$score33[$p]= $score33[$p]+ $score3;
}
$scoretotal[$p]= $score11[$p]+$score22[$p]+$score33[$p];
$p=$p+1;
}
$p_max=$p;
echo $p_max;
array_multisort($scoretotal, SORT_DESC, $org, $score11, $score22, $score33, $name);
发生了什么:第1个循环(当$ row ...... $ p = $ p + 1)退出第一个进入2号循环(而$ row1 ...... $ score3)。这意味着该行
echo " ". $id_selfscore. "is the id of user";
只执行一次。 理想情况应该发生:它应该为所有组织提供条目
我尝试了几件事,但未能弄清楚原因。你能帮忙吗?