PHP / MySQL - обновить данные таблицы данными сеанса - PullRequest
0 голосов
/ 11 августа 2011

Как обновить данные таблицы данными, сохраненными в сеансе?

У меня следующий код, но он не работает (INSERTING INTO DB не работает точно)Пожалуйста, обратите внимание, что это только часть кода.Значение сеанса сохраняется правильно.У меня проблема с их сохранением.

Если я сделал глупую ошибку - извиняюсь - я новичок.

    $loggedTime = $_SESSION['loggedtime'];
    $thisUser = $_SESSION['usr'];

    $result = mysql_query("UPDATE 'admin' SET dt = $loggedTime WHERE $thisuser");
    if($result) {
         echo "success"; 
    } else { 
        echo "no success"; 
    }

Ответы [ 4 ]

5 голосов
/ 11 августа 2011
"UPDATE `admin` SET `dt` = '$loggedTime' WHERE user = '$thisUser'"

Не используйте одинарные кавычки вокруг имен столбцов / таблиц.Одинарные / двойные кавычки указывают на строковые литералы.Используйте обратные галочки вокруг имен таблиц / столбцов, если необходимо (т.е. зарезервированное слово).Кроме того, взгляните на Bobby Tables .Кроме того, вам нужен столбец в предложении where.

3 голосов
/ 11 августа 2011

UPDATE 'admin'

заменить одинарную кавычку

UPDATE admin SET ...

Понимают, что многие люди используют обратный тик для цитирования таблицы, названия столбца ... я не думаю,

просто взгляните на документы MySQL
ОНИ никогда этого не делают

2 голосов
/ 11 августа 2011

Theres проблема с вашим SQL-запросом.

UPDATE 'admin' SET dt = $loggedTime WHERE $thisuser

В предложении where не указывается какое-либо условие, попробуйте:

UPDATE 'admin' SET dt = '$loggedTime' WHERE userField = $thisuser

заменив 'userField' на имя поля, которое соответствуетВы хотели бы подготовить для.

2 голосов
/ 11 августа 2011

Попробуйте явно указать имя столбца в предложении WHERE и заключить переменные в одинарные кавычки.

"UPDATE `admin` SET dt = '$loggedTime' WHERE user = '$thisuser'"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...