sql запрос отправляется со второго раза

php

$connect = mysqli_connect('localhost','root','0000','yey_bd');
$sql="SELECT `comment_id` FROM `project_comments` WHERE `project_id` = '$project_id'";
$query = mysqli_query($connect,$sql);

while($row = mysqli_fetch_assoc($query)){
    $delete_com_id = $row['comment_id'];
    $sql = "DELETE FROM `reply_com` WHERE `reply_comment_id`='$delete_com_id'";
    $query = mysqli_query($connect,$sql);
}

header('location:home.php');

Пишет

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in D:\OpenServer\domains\WebProjects\deleteproject.php on line 13

Но когда перезагружаю страницу все работает


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

Автор решения: Даниил Колонтаевский

Возможно проблема в том что вы после завершения операции не удаляете выборку и не завершаете соединение: mysqli_fetch_assoc - Процедурный стиль

<?php
$link = mysqli_connect("localhost", "my_user", "my_password", "world");

/* проверка соединения */
if (mysqli_connect_errno()) {
    printf("Соединение не удалось: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";

if ($result = mysqli_query($link, $query)) {

    /* извлечение ассоциативного массива */
    while ($row = mysqli_fetch_assoc($result)) {
        printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);
    }

    /* удаление выборки */
    mysqli_free_result($result);
}

/* закрытие соединения */
mysqli_close($link);
?>
→ Ссылка
Автор решения: Sasha

перед $connect напишите

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

И вам высветится корень ошибки

→ Ссылка