我是pdo的新手,只是尝试了以下内容并导致致命的错误。
$pdo = new pdo('mysql:localhost;widget_corp;charset=utf-8', 'root', '');
$query = $pdo->query("SELECT * FROM 'users'");
$result_array = $query->fetchAll(PDO::FETCH_ASSOC);
答案 0 :(得分:5)
变化:
mysql:localhost;widet_corp
到
mysql:host=localhost;dbname=widget_corp
同样在您发布的代码中:
$query = $pdo->query("SELECT * FROM 'users'");
您将表名称放在单引号内。在Mysql中,你应该使用反引号代替表和列。
$query = $pdo->query("SELECT * FROM `users`");
答案 1 :(得分:4)
PDO::query
会返回false
。
SELECT * FROM 'users'
应该是
SELECT * FROM `users`
答案 2 :(得分:3)
$pdo->query()
将返回false。你没有正确启动pdo,你可能想检查查询是否没有返回错误,所以:
$pdo = new pdo('mysql:host=localhost;dbname=widget_corp;charset=utf-8', 'root', '');
$query = $pdo->query("SELECT * FROM `users`");
if($query !== false)
{
$result_array = $query->fetchAll(PDO::FETCH_ASSOC);
}
答案 3 :(得分:1)
请改用此代码:
$pdo = new PDO('mysql:host=localhost;dbname=widget_corp;charset=UTF-8', 'root', '');
$query = $pdo->query("SELECT * FROM `users`");
$result_array = $query->fetchAll(PDO::FETCH_ASSOC);
如果这不起作用,您确定PDO
安装正确吗?