хотите подключиться к той же таблице базы данных, но с разными значениями - PullRequest
0 голосов
/ 11 апреля 2019

У меня есть этот код, где я хочу установить новое соединение с той же базой данных, но у меня разные значения, которые будут отличаться от предыдущего соединения с базой данных, однако всякий раз, когда я запускаю соединение, я получаю сообщение об ошибке на своем веб-сайте. говоря: «Не могу получить mysqli», пожалуйста, помогите, я не знаю, что делать

я попытался закрыть соединение с базой данных, используя "mysqli_close ($ conn);" но не сработало

$result = mysqli_query($conn, "SELECT * FROM userissues, response WHERE response.idmatch = userissues.emailcount");
$count = mysqli_num_rows($result);

if($count == 0){
    mysqli_close($conn);

    $result = mysqli_query($conn,"SELECT * FROM userissues WHERE departmentSent = '$_SESSION[user_email]' ORDER BY dateSent DESC");
    $count = mysqli_num_rows($result);

    if($count == 0){
        echo '<p style="margin-left: 162px; width: 300px; float: left; height: 50px;">you have no emails</p>';
    }else{
        while($row = mysqli_fetch_array($result))
        {
            ?>
            <a href="email_preview.php?id=<?php echo $row['emailcount'];?>&site=inbox">
                <?php

            echo '
            <table border="1" id="'.$row["emailcount"].'" style="margin-left: 162px; width: 300px; float: left; height: 50px;">
            <tr><td>'.$row["user_email"].'</td></tr><br>
            <tr><td>'.$row["dateSent"].'</td></tr><br>
            <tr><td>'.$row["subject"].'</td></tr><br>
            <tr><td> '.$row["report"].'</td></tr><br><br>
            </table>
            </a>
            ';

                }
    }
    mysqli_close($conn);
}elseif($count > 0){
        mysqli_close($conn);

        $result = mysqli_query($conn,"SELECT * FROM userissues, response WHERE userissues.departmentSent = '$_SESSION[user_email]' AND response.user_receiver = '$_SESSION[user_email]' ORDER BY userissues.dateSent AND response.dateResponded DESC");
        $count = mysqli_num_rows($result);

        if($count == 0){
            echo '<p style="margin-left: 162px; width: 300px; float: left; height: 50px;">you have no emails</p>';
        }else{
            while($row = mysqli_fetch_array($result)){
                    echo'';
            }
        }
}

я просто хочу установить новое соединение с той же базой данных, но с другими значениями

1 Ответ

1 голос
/ 11 апреля 2019

Если вы закроете соединение mysqli_close($conn);, вы больше не сможете отправлять запросы с использованием этого соединения.По сути, это разрушит канал, по которому вы можете отправлять запросы и получать результаты.

Я думаю, что вы действительно хотите сделать это mysqli_free_result($result)

Документация для mysqli_free_result()

Ваш сценарий широко открыт для Атака SQL-инъекций Даже , если вы экранируете входные данные, это небезопасно! Используйте подготовленные параметризованные операторы в MYSQLI_ или PDO API

Если вам действительно нужно закрыть соединение с базой данных mysqli_close($conn);, вам придется выполнить еще один $con = mysqli_connect() для создания другогоподключение.Однако это сравнительно медленный процесс, и один скрипт должен действительно открывать только одно соединение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...