RimMirK
@RimMirK
Вроде человек. Вроде учусь. Вроде пайтону

Как исправить ошибку?

Скрипт отвечает за обновление данных в БД. Но выдает ошибку
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in E:\codes\tuzikhub.ua\adminpanel\handlers\index-content.php on line 7

не пойму в чем дело.. Если пишу тот-же самый запрос в phpmyadmin то все хорошо, а тут нет
.
<?php 
include '../../db.php';
echo '['.date("H:i:s").'] - Запуск скрипта<br>';
$sql_query = "UPDATE `contents` SET `content` = '".mysqli_real_escape_string($connection, $_POST['index_content'])."' WHERE `contents`.`id` = 2;";
$sql = mysqli_query($connection, $sql_query);
echo '['.date("H:i:s").'] - Запрос выполнен! <br><details><summary>Текст запроса</summary><font style="font-family:monospace;">'.$sql_query.'</font></details>';
echo 'Ответ SQL:<br><font style="font-family:monospace;">'.mysqli_fetch_assoc($sql).'</font>';
 ?>


выводится вот что
[22:24:35] - Запуск скрипта
[22:24:35] - Запрос выполнен!
Текст запроса
UPDATE `contents` SET `content` = 'Привет всем!' WHERE `contents`.`id` = 2;
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in E:\codes\tuzikhub.ua\adminpanel\handlers\index-content.php on line 7
Ответ SQL:
  • Вопрос задан
  • 88 просмотров
Решения вопроса 1
@humoured
Вы всё на свете найдёте в коробке с карандашами
Смотрите что возвращает функция mysqli_query(), скорее всего там будет true.
UPDATE, INSERT и подобные запросы не возвращают объект типа mysqli_result в отличие от запросов SELECT.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
delphinpro
@delphinpro Куратор тега PHP
frontend developer
expects parameter 1 to be mysqli_result, boolean given

ну написано же - ожидается объект а прилетает буль, стопудово false.
Читаем, почему возвращается false https://www.php.net/manual/ru/mysqli.query.php
Ищем ошибку в запросе.
Ответ написан
toxa82
@toxa82
mysqli_query для не DML-запросов (не INSERT, UPDATE или DELETE)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы