php - 检索数据时出现 SQL 错误

标签 php mysql sql

无论我更改什么,我都会继续运行此代码并得到相同的错误。

require('common.php');
$charname = $_SESSION['user']['username'];
$query = "SELECT group, guild, username, class, level 
      FROM DD_users 
      WHERE username = '".$charname."'";
try
{
// These two statements run the query against your database table.
$stmt = $db->prepare($query);
$stmt->execute();
}
catch(PDOException $ex)
{
// Note: On a production website, you should not output $ex->getMessage().
// It may provide an attacker with helpful information about your code. 
die("Failed to run query: " . $ex->getMessage());
}

// Finally, we can retrieve all of the found rows into an array using fetchAll
$rows = $stmt->fetchAll();

//print_r($rows);
$group = $rows['0']['adminaccess'];
$guild = $rows['0']['guild'];
$username = $rows['0']['username'];
$class = $rows['0']['class'];
$level = $rows['0']['level'];

它返回这个错误
SQLSTATE[42000]:语法错误或访问冲突:1064 您的 SQL 语法有误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行的“group, guild, username, class, level FROM DD_users”附近使用的正确语法 显然我需要更多文本才能编辑它...

最佳答案

您忘记了 ' 字符:

$query = "SELECT group, guild, username, class, level 
          FROM DD_users 
          WHERE username = '".$charname."'";

关于php - 检索数据时出现 SQL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14006376/

相关文章:

php - Md5 mysql 行中的所有信息

php - 比较 PostgreSQL 中的不同数据类型。

mysql - 简单的 MySQL 连接不起作用

mysql - Datajoint:锁定等待超时超出错误

java - 带有 byte[] WHERE 子句的 SQLite 查询

sql - 如何从 Ms Access 2007 中的同一个表中进行选择和更新

php - Elasticsearch :获取此结果集的可用构面/聚合的列表

php - 如何规范化编码名称,如 ks_c_5601-1987 到 CP949?

mysql - 构建具有未知列数的sql表的最佳方法

mysql - #1064 - 你的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册以获取正确的语法