查询无效:您的 SQL 语法有误; near 使用的语法

Invalid query: You have an error in your SQL syntax; syntax to use near

我有这个问题错误,我不知道如何解决。我知道有多少人有像我这样的问题,但我无法定位。

问题:

Invalid query: 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 'FROM `user` WHERE `id` = 0' at line 6

代码:

<?php
function fetch_users(){
$result = mysql_query('SELECT `id` AS `id`, `username` AS `username` FROM `user`');

$users = array();

while(($row = mysql_fetch_assoc($result)) !== false){
       $users[] = $row;
   }

   return $users;

}

// fetches profile information for the given user.
function fetch_user_info($id){
   $id = (int)$id;

   $sql = "SELECT 
               `username` AS `username`,
               `firstname` AS `firstname`,
               `lastname` AS `lastname`,
               `email` AS `email`,
             FROM `user` WHERE `id` = {$id}";

      $result = mysql_query($sql);
      if (!$result) {
   die('Invalid query: ' . mysql_error());
   }

      return mysql_fetch_assoc($result);
}


?>

删除最后一列后的逗号:

$sql = "SELECT 
             `username` AS `username`,
             `firstname` AS `firstname`,
             `lastname` AS `lastname`,
             `email` AS `email`              -- here
         FROM `user` WHERE `id` = {$id}";

此外,您不需要使用与列相同的别名:

$sql = "SELECT 
             `username`,
             `firstname`,
             `lastname`,
             `email`  
         FROM `user` WHERE `id` = {$id}";

问题在于 $sql 中 sql 查询的语法结构,因为错误本身表明错误接近 FROM user WHERE id=0,另外 comma , select 中的 email 附近查询抛出 sql 错误。

<?php
echo 'test';

function fetch_users(){
    $result = mysql_query('SELECT `id` AS `id`, `username` AS `username` FROM `user`');
    $users = array();
    while(($row = mysql_fetch_assoc($result)) !== false){
        $users[] = $row;
    }
    return $users;
}
// fetches profile information for the given user.
function fetch_user_info($id){
    $id = (int)$id;
    $sql = "SELECT 
`username` AS `username`,
`firstname` AS `firstname`,
`lastname` AS `lastname`,
`email` AS `email`
FROM `user` WHERE `id` = {$id}";
    $result = mysql_query($sql);
    if (!$result) {
        die('Invalid query: ' . mysql_error());
    }
    return mysql_fetch_assoc($result);
}
echo fetch_users();

?>