0

各ユーザーがハッシュを取得し、ユーザーが別の場所にログインすると、ユーザーが最後にログインしたハッシュを持っていることを確認する安全なセッション管理を作成しようとしています。このように、ユーザーがログアウトするのを忘れた場合、システムはユーザーのアカウントをログアウトします。これは私が書いたSQLステートメントであり、このエラーが発生します。誰かが理由を教えてもらえますか?

ありがとうございました

"SELECT * FROM 'v_pos_user_session WHERE userID='$userID' AND hash='$hash' AND admin='0' time=(SELECT max(time) FROM v_pos_user_session WHERE userID='$userID' AND admin='0')"

QLSTATE[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 'time=(SELECT max(time) FROM v_pos_user_session WHERE userID='6' AND admin='0')' at line 1
4

1 に答える 1

6

あなたはバックティックで脱出timeする必要があり、あなたは忘れましたand

SELECT * FROM v_pos_user_session 
WHERE userID='$userID' 
AND hash='$hash' 
AND admin='0' 
and `time`=(SELECT max(time) FROM v_pos_user_session 
            WHERE userID='$userID' AND admin='0')

'そしてあなたは前に不要なものを残しましたv_pos_user_session

于 2012-06-04T15:03:17.067 に答える