Ошибка Warning: Trying to access array offset on value of type null in C:\OpenServer\domains\UchProc\TEST.php on line 45

Больше недели пытаюсь вывести на веб-страницу в виде таблицы данные из таблицы PhpMyAdmin.

Наконец-то что-то заработало и на тебе. Браузер выдал ошибку

Warning: Trying to access array offset on value of type null in C:\OpenServer\domains\UchProc\TEST.php on line 45 И это выдает с 45 по 56 строку.

У меня стоит php версии 8.0, возможно из-за того, что в новых версиях опять что-то изменили, он выдает эту ошибку. Как исправить ?

Код :

<?php
$db_host='localhost'; // ваш хост
$db_name='uch_proc'; // ваша бд
$db_user='root'; // пользователь бд
$db_pass='root'; // пароль к бд
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);// включаем сообщения об ошибках
$mysqli = new mysqli($db_host, $db_user, $db_pass, $db_name); // коннект с сервером бд
$mysqli->set_charset("utf8mb4"); // задаем кодировку

/*$connect = mysqli_connect($db_host, $db_name, $db_user, $db_pass);*/

$r=mysqli_query($mysqli, 'SELECT * FROM studenti')
        or die(mysqli_error());

$result = $mysqli->query('SELECT * FROM `studenti`'); // запрос на выборку
while($row = $result->fetch_assoc())// получаем все строки в цикле по одной
$rows=mysqli_num_rows($r);


   
   ?>

    <TABLE border=4 cellspasing=15 bgcolor="WHITE" ALIGN="center">
      <COLGROUP  span=12 width="150">
      <CAPTION>  
      <FONT color="BLACK"> 
      <H1>
      Список студентов
      </h1>
      </FONT> 
      </caption>    
      <TR><TH bgcolor="INDIGO"><FONT color="white"> Табельный номер </FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Фамилия</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Имя</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Отчество</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Факультет</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Курс</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Группа</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Пол</FONT>
      <TH bgcolor="INDIGO"><FONT color="white">Дата рождения</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Рост</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Средний балл</FONT>
      <TH bgcolor="INDIGO"><FONT color="white">Доход</FONT>      
        <?php for  ($i=0; $i<$rows; $i++) {?>
      <TR ALIGN="center"><TD><?php echo $row[$i]["Tab_stud"]?>  // Ошибка начиная с этой строки
      <TD><?php echo $row[$i]["Fam_stud"]?>
      <TD><?php echo $row[$i]["Name_stud"]?>
      <TD><?php echo $row[$i]["Otch_stud"]?>
      <TD><?php echo $row[$i]["Fakult"]?>
      <TD><?php echo $row[$i]["Kurs"]?>
      <TD><?php echo $row[$i]["Gruppa"]?>
      <TD><?php echo $row[$i]["Pol"]?>
      <TD><?php echo $row[$i]["Data_Roj"]?>
      <TD><?php echo $row[$i]["Rost"]?>
      <TD><?php echo $row[$i]["Sr_ball"]?>
      <TD><?php echo $row[$i]["Doxod"]?>   // Заканчивая на этой
          
    <?php }?>
      </table> 

Ответы (1 шт):

Автор решения: splash58
$result = $mysqli->query('SELECT * FROM `studenti`'); // запрос на выборку
$rows=mysqli_num_rows($r);
if(! $rows) {
    // что делать, если нет нужных записей в базе
}   
else {   
   ?>

    <TABLE border=4 cellspasing=15 bgcolor="WHITE" ALIGN="center">
      <COLGROUP  span=12 width="150">
      <CAPTION>  
      <FONT color="BLACK"> 
      <H1>
      Список студентов
      </h1>
      </FONT> 
      </caption>    
      <TR><TH bgcolor="INDIGO"><FONT color="white"> Табельный номер </FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Фамилия</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Имя</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Отчество</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Факультет</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Курс</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Группа</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Пол</FONT>
      <TH bgcolor="INDIGO"><FONT color="white">Дата рождения</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Рост</FONT> 
      <TH bgcolor="INDIGO"><FONT color="white">Средний балл</FONT>
      <TH bgcolor="INDIGO"><FONT color="white">Доход</FONT> 
  <?php while($row = $result->fetch_assoc()) : ?>
      <TR ALIGN="center"><TD><?php echo $row["Tab_stud"]?>
      <TD><?php echo $row["Fam_stud"]?>
      <TD><?php echo $row["Name_stud"]?>
      <TD><?php echo $row["Otch_stud"]?>
      <TD><?php echo $row["Fakult"]?>
      <TD><?php echo $row["Kurs"]?>
      <TD><?php echo $row["Gruppa"]?>
      <TD><?php echo $row["Pol"]?>
      <TD><?php echo $row["Data_Roj"]?>
      <TD><?php echo $row["Rost"]?>
      <TD><?php echo $row["Sr_ball"]?>
      <TD><?php echo $row["Doxod"]?>   // Заканчивая на этой
          
    <?php endwhile; ?>
      </table> 
<?php } ?>
→ Ссылка