【问题标题】:PHP Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]PHP 致命错误:未捕获的异常 'PDOException' 带有消息 'SQLSTATE[42000]
【发布时间】:2017-10-23 21:00:21
【问题描述】:

我的网站出现错误。 错误:

致命错误:未捕获的异常 'PDOException' 带有消息 'SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在 /home/tregolap/public_html/config/class/universal.class 中的 'get FROM login WHERE user_id = '252' LIMIT 1' at line 1' 附近使用正确的语法。 php:110 堆栈跟踪:#0 /home/tregolap/public_html/config/class/universal.class.php(110): PDOStatement->execute(Array) #1 /home/tregolap/public_html/ajaxify/profile/profile_banner。 php(89): universal->isOnline('252') #2 /home/tregolap/public_html/profile.php(71): include_once('/home/tregolap/...') #3 {main} 投入/home/tregolap/public_html/config/class/universal.class.php 在第 110 行

universal.class.php 代码为:

if ($user != $session) {
      $query = $this->db->prepare("
        SELECT MAX(login_id) AS get 
        FROM login WHERE user_id = :id LIMIT 1");
      $query->execute(array(":id" => $user));

个人资料横幅错误:

<?php
if($universal->isOnline($get_id)){
  echo "<span class='user_status'>online</span>";
}

请有人告诉我出了什么问题,或者我是否必须为该主题编辑更多代码,以便我使用完整信息对其进行编辑,

谢谢!

【问题讨论】:

标签: php mysql sql


【解决方案1】:

在您的 SQL 中,get 是 reserved words in MySQL 之一。您可以将其更改为非保留字或在其周围加上引号/反引号。

if ($user != $session) {
  $query = $this->db->prepare("
    SELECT MAX(login_id) AS `get` 
    FROM login WHERE user_id = :id LIMIT 1");
  $query->execute(array(":id" => $user));

【讨论】:

    猜你喜欢
    • 2014-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多