Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 不进入fetch assoc循环内部_Php_Mysql - Fatal编程技术网

Php 不进入fetch assoc循环内部

Php 不进入fetch assoc循环内部,php,mysql,Php,Mysql,大家好,我正在尝试从数据库中检索数据 我调试了所有的东西,它工作正常 我的问题是网站没有进入第二个循环 因为当我试着打印计数器和任何一个和的时候,它给了我0 他是我代码中出现问题的一部分: <?php error_reporting(0); require 'db/connect.php'; $results= $db->query("SELECT * FROM instructors"); $counter=0;

大家好,我正在尝试从数据库中检索数据 我调试了所有的东西,它工作正常 我的问题是网站没有进入第二个循环 因为当我试着打印计数器和任何一个和的时候,它给了我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