Простой PHP MySQL запрос SELECT захватывает старые данные - PullRequest
0 голосов
/ 22 марта 2020

Я строил простой сервер API отдыха с PHP. Я пользуюсь услугой хостинга Bluehost. Вот мои пользователи. php file.

include_once('../common/include.php');
$conn=getConnection();

if($conn==null){
    sendResponse(500,$conn,'Server Connection Error');
}else{
    $sql = "SELECT `userdate`, `title`, `src`, `content` FROM user";
    $result = $conn->query($sql);

    if ($result->num_rows > 0) {
        $users=array();
        while($row = $result->fetch_assoc()) {
            $user=array(
                "userdate" =>  $row["userdate"],
                "title" => $row["title"],
                "src" => $row["src"],
                "content" => $row["content"],
            );
            array_push($users,$user);
        }
        sendResponse(200,$users,'user List');
    } else {
        sendResponse(404,$result,'user not available');
    }
    $conn->close();
}
?>

Вот сценарий.

  1. , когда я захожу /users.php -> показать правильный результат , массив пользователей.

  2. I go в phpmyadmin и добавление пользователя -> Я могу убедиться, что он успешно добавлен в phpmyadmin.

  3. когда я снова захожу в /users.php -> показываю результат № 1.

Я не знаком с php и mysql (я человек узла :(), и я действительно не понимаю, почему это происходит. Через несколько часов (или даже на следующий день), он начинает показывать данные обновления ... Вот моя теория:

  • может быть, он захватывает кэшированные данные?
  • может быть, он все еще думает, что соединение не закончено ... ? и не показывать обновление?

В любом случае, это не имеет смысла для меня. Я вообще не касался mysql, поэтому не уверен, что mysql предоставляет такую ​​функциональность по умолчанию ... Также он делает $ conn-> close (), так что хм ...

Не могли бы вы мне помочь? Заранее спасибо.

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