PHP SQL数据库查询错误消息

Lea*_*cim 2 php database

这个SQL代码有什么问题吗?我从教程中得到它,但它返回以下错误消息

数据库查询失败:您的SQL语法中有错误; 检查与MySQL服务器版本对应的手册,以便在第1行的"LIMIT 1"附近使用正确的语法

function get_subject_by_id($subject_id) {
    global $connection;
    $query = "SELECT * ";
    $query .= "FROM subjects ";
    $query .= "WHERE id=" . $subject_id ." ";
    $query .= "LIMIT 1";
    $result_set = mysql_query($query, $connection);
    confirm_query($result_set);
    // if no rows are returned, fetch array will return false
    if ($subject = mysql_fetch_array($result_set)){
    return $subject;
    } else {
    return NULL;

    }
    }
Run Code Online (Sandbox Code Playgroud)

Gol*_*rol 7

最好回应查询并查看它的外观.

可能不$subject_id包含任何值或无效值.如果$subject_id是一个字符串,你应该逃避它(使用mysql_real_escape_string) ,并把它放在引号内的查询.

[编辑]

你知道你也可以输入字符串,对吧?

// More readable
$query = "
  SELECT *
  FROM subjects
  WHERE id = $subject_id
  LIMIT 1";
Run Code Online (Sandbox Code Playgroud)