Php 不进入fetch assoc循环内部
大家好,我正在尝试从数据库中检索数据 我调试了所有的东西,它工作正常 我的问题是网站没有进入第二个循环 因为当我试着打印计数器和任何一个和的时候,它给了我0 他是我代码中出现问题的一部分:Php 不进入fetch assoc循环内部,php,mysql,Php,Mysql,大家好,我正在尝试从数据库中检索数据 我调试了所有的东西,它工作正常 我的问题是网站没有进入第二个循环 因为当我试着打印计数器和任何一个和的时候,它给了我0 他是我代码中出现问题的一部分: <?php error_reporting(0); require 'db/connect.php'; $results= $db->query("SELECT * FROM instructors"); $counter=0;
<?php
error_reporting(0);
require 'db/connect.php';
$results= $db->query("SELECT * FROM instructors");
$counter=0;
while($row = $results->fetch_assoc()){
$id=$row['id'];
$query="SELECT * FROM Instructors LEFT OUTER JOIN ratings ON instructors.id=ratings.instructor Where instructors.id=".$id;
$sum1=0;
$sum2=0;
$sum3=0;
$count=0;
if($result = $db->query($query)){
while ($rowe = $result->fetch_assoc()) {
$sum1+=$rowe['teaching_rating'];
$sum2+=$rowe['marks_rating'];
$sum3+=$rowe['help_rating'];
$count++;
}
$result->free();
}
echo "<script> console.log('".$count."')</script>";
$overall=(($sum1/$count)+($sum2/$count)+($sum3/$count))/3;
$overall = floor($overall * 2) / 2;
}
?>
因此,请帮我修复其中一个或两个,或者尝试这样做
$sum1=0;
$sum2=0;
$sum3=0;
$count=0;
while($row = $results->fetch_assoc()){
$id=$row['id'];
$query="SELECT * FROM Instructors LEFT OUTER JOIN ratings ON instructors.id=ratings.instructor Where instructors.id=".$id;
$result = $db->query($query);
while ($rowe = $result->fetch_assoc()) {
$sum1+=$rowe['teaching_rating'];
$sum2+=$rowe['marks_rating'];
$sum3+=$rowe['help_rating'];
$count++;
}
$result->free();
}
echo "<script> console.log('".$count."')</script>";
$overall=(($sum1/$count)+($sum2/$count)+($sum3/$count))/3;
$overall = floor($overall * 2) / 2;
//do something with $overall i guess
$sum1=0;
$sum2=0;
$sum3=0;
$count=0;
而($row=$results->fetch_assoc()){
$id=$row['id'];
$query=“SELECT*FROM Instructors LEFT OUTER JOIN ratings ON Instructors.id=ratings.讲师Where Instructors.id=”.$id;
$result=$db->query($query);
而($rowe=$result->fetch_assoc()){
$sum1+=$rowe[“教学评分”];
$sum2+=$rowe['marks_rating'];
$sum3+=$rowe['help_rating'];
$count++;
}
$result->free();
}
echo“console.log('.$count.')”;
$total=($sum1/$count)+($sum2/$count)+($sum3/$count))/3;
$overall=地板($overall*2)/2;
//我想用美元做点什么吧
外部查询中出现问题:
从讲师而不是讲师中选择*
奇怪的是,本地主机工作正常
但是服务器不工作
可能是因为版本号不同我需要为每个循环重置这些变量,我的代码中有一个分音符,我以任何方式打印整体,我尝试了你的方式,但它不会改变任何东西,谢谢你的帮助。你确定你的内部查询返回记录吗?
$sum1=0;
$sum2=0;
$sum3=0;
$count=0;
while($row = $results->fetch_assoc()){
$id=$row['id'];
$query="SELECT * FROM Instructors LEFT OUTER JOIN ratings ON instructors.id=ratings.instructor Where instructors.id=".$id;
$result = $db->query($query);
while ($rowe = $result->fetch_assoc()) {
$sum1+=$rowe['teaching_rating'];
$sum2+=$rowe['marks_rating'];
$sum3+=$rowe['help_rating'];
$count++;
}
$result->free();
}
echo "<script> console.log('".$count."')</script>";
$overall=(($sum1/$count)+($sum2/$count)+($sum3/$count))/3;
$overall = floor($overall * 2) / 2;
//do something with $overall i guess