0
我嘗試從與下面的代碼從數據庫中獲取的一些數據。 有一個用於連接詳細信息的通用配置文件。從MySQL獲取數據與PDO
的config.inc.php
<?php
$servername = "localhost";
$username = "root";
$password = "root";
$dbname = "test";
try {
$connection = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e)
{
die("OOPs something went wrong");
}
?>
有一個分開的文件來執行數據庫查詢。
query.inc.php
<?php
require_once('config.inc.php');
$sql = 'SELECT name from table';
$statement = $connection->prepare($sql);
$statement->execute();
if($statement->rowCount())
{
$row_all = $statement->fetchall(PDO::FETCH_ASSOC);
header('Content-type: application/json');
echo json_encode($row_all);
}
elseif(!$statement->rowCount())
{
echo "no rows";
}
?>
它扔HTTP ERROR 500
而不是JSON格式的字符串的。正如我所看到的,代碼在語法上是有效的,並且無法找到語義錯誤。配置也是有效的,我用另一個腳本測試了它。
它記錄了什麼錯誤? http://csackoverflow.com/questions/845021/how-to-get-useful-error-messages-in-php – cske
@cske:我發現了這個問題。變量'$ connection'未定義,因爲它在配置中初始化爲'$ conn'。 – appkovacs
如果你可以回答這個問題,請發表一個答案。否則這個問題不會幫助任何人。 – tadman