Intereting Posts

MySql Общая ошибка: 2053

Я получаю сообщение об ошибке:

ОШИБКА: SQLSTATE [HY000]: Общая ошибка: 2053

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

Вот мой код:

<?php header("Content-Type: application/json; charset=UTF-8"); require 'UHCauth.php'; try { $conn = new PDO("mysql:host=$mysql_serv;dbname=$mysql_db", $mysql_user, $mysql_pass); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $conn->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); if(isset($_GET['d6518e47'])) { $USERNAME = $_GET['d6518e47']; $stmt = $conn->prepare( "UPDATE $mysql_table SET KILLS = KILLS+1 WHERE USERNAME = :USERNAME" ); $stmt->execute(array('USERNAME' => $USERNAME)); $row = $stmt->fetch(PDO::FETCH_ASSOC); echo json_encode($row); } else { $stmt = $conn->prepare( "SELECT * FROM $mysql_table ORDER BY McVersion DESC, ModVersion DESC LIMIT 1" ); $stmt->execute(); $row = $stmt->fetch(PDO::FETCH_ASSOC); echo json_encode($row); } } catch(PDOException $e) { echo 'ERROR: ' . $e->getMessage(); } ?> 

$row = $stmt->fetch(PDO::FETCH_ASSOC); это строка, которая вызовет вашу ошибку.

Зачем?

Потому что ничего не получается – в массиве – после обновления

Помните, что

PDO :: FETCH_ASSOC: возвращает массив, индексированный по имени столбца, возвращенный в ваш результирующий набор

Итак, никакого результата нет … нет вечеринки

Если вы хотите узнать статус выхода своей команды, просто используйте возвращаемое значение функции execute()

$rv = $stmt->execute(array('USERNAME' => $USERNAME));