我是PDO的新手。
这是我到目前为止所做的,
创建文件“pdotest.php”
该文件中的代码
<?php
try {
$conn = new PDO('mysql:host=localhost;dbname=houserentsystem;charset=utf8', 'root', 'admin');
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
$stmt = $conn->query("SELECT roomName FROM roomName.roomnames");
$results = $stmt->fetchAll();
$stmt->closeCursor();
print_r($results);
var_dump($results);
它应该显示来自数据库的一些结果,但它在firebug中显示500内部服务器错误,但屏幕上没有错误,它是一个白色的空白屏幕。
答案 0 :(得分:2)
$stmt = $conn->query("SELECT roomName FROM roomName.roomnames");
试试这个:
$stmt = $conn->query("SELECT roomName FROM roomnames");
选择语法是(基本上):
SELECT column[, another_column, ...] FROM tablename[WHERE condition][ORDER BY some_column ASC/DESC];`
当您将错误模式设置为PDO::ERRMODE_EXCEPTION
时,您需要使用try / catch查看任何错误。这会带来围绕数据库查询包装try
/ catch
语句的负担。
检查你的php日志文件中确切的php错误 - 显示一个白色的屏幕,因为php可能设置为不在屏幕上显示错误。
答案 1 :(得分:0)
我检查这部分:
SELECT roomName FROM roomName.roomnames
您是否真的尝试从名为roomName.roomnames的表中选择roomName列?应该不是像
那样SELECT roomnames FROM roomName