Ошибка при выполнении SQL-запроса в PHP (PDO)

374
27 марта 2017, 10:14

Вроде бы уже поменял все названия столбцов так, что бы они не совпадали с ключевыми словами SQL, но ошибка осталась.

try
    {
        $db = DB::getConnection();
        $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $sql = "INSERT INTO `users`(`uname`, `surname`, `email`, `upassword`, `gender`, `dob`) 
                          VALUES (:uname, :surname, :email, :upassword, :gender, :dob";
        $stmt = $db->prepare($sql);
        $stmt->execute(array(
            'uname' => $uname,
            'surname' => $surname,
            'email' => $email,
            'upassword' => $upassword,
            'gender' => $gender,
            'dob' => $dob
        ));
    }
    catch(PDOException $e)
    {
        echo $e->getMessage();
    }

Ошибка:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 2

В то же время такой вот код работает без проблем:

try
    {
        $db = DB::getConnection();
        $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $stmt = $db->prepare("SELECT ```id```, `uname`, `surname`, `email`, `gender`, `dob` FROM `users` 
                          WHERE ```id``` = ?");
        if ($stmt->execute(array($id))) {
            while ($row = $stmt->fetch()) {
                return $row;
            }
        }
    } catch(PDOException $e)
    {
        echo $e->getMessage();
    }
    return Null;
READ ALSO
Помощь с foreach

Помощь с foreach

Не могу понять что не так?, должна выводиться текущая темаВместо этого выводиться весь список тем в переменную $t['code']

307
Ajax запрос ждет ответа от php

Ajax запрос ждет ответа от php

Использую аякс запрос, и хочу чтобы отправить запрос, и не ждать пока обработается пхп скрипт

336
Экспорт данных в документ для печати

Экспорт данных в документ для печати

Имеется стандартная форма ФИО, Должность, Организация, АдресПо нажатию кнопки из этой формы попадают в таблицу

315