PHP pg_query заявление об обновлении

Я пытаюсь обновить таблицу базы данных, используя pq_query в PHP. У меня есть следующий код:

$q = "UPDATE tableName SET ('data1 = " . $data1 . "', data2='" . $data2 . "') WHERE user=".$user;
$success = pg_query($q); 
if (!$success) { 
    $errormessage = pg_last_error(); 
    echo "Error " . $errormessage; 
}

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

ОШИБКА: синтаксическая ошибка в или около "'data1 = '"

ЛИНИЯ 1: ОБНОВЛЕНИЕ tableName SET ('data1 = 10', data2= 20''), ГДЕ пользователь =

2 ответа

Решение

Замените ваш запрос этим запросом

$q = "UPDATE tableName SET data1 = '$data1', data2='$data2' WHERE user='$user'";

Объяснение: Вы должны передавать переменную в одинарных кавычках (''), если ваш запрос в двойных кавычках.

Вы используете много цитат, которые не понятны Mysql, попробуйте просто так:

        $q = "UPDATE tableName SET data1 = " . $data1 . ", data2=" . $data2 . " WHERE user=".$user;

удалить эти одинарные кавычки!

Другие вопросы по тегам