2014-04-15 108 views
1

我想從數據庫中返回一些信息。在MySQL中執行查詢時的問題很好,但是當我在PHP中運行相同的查詢時,它不起作用。它只有當我設置一個限制到9以下。任何東西9和以上返回一個空白屏幕。我的桌子目前有超過40行。print_r返回所有的mysql結果,但json_encode什麼也沒有返回

當我啓動一個print_r($ results)時。所有行返回但json_encode($結果),但如果是8

ini_set("display_errors",1); 
$Db = new PDO ("mysql:host=127.0.0.1;dbname=recycle",'root',''); 
$Db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
$Query = $Db->prepare('SELECT * FROM recyclable'); 

$Query->execute(); 

$Results = $Query->fetchAll(PDO::FETCH_OBJ); 

echo json_encode($Results); [error] 
//print_r($Results) works. 

限制我刪除了數據庫,並嘗試了again.Still不能正常工作,甚至測試返回黑屏,只回報針對其他數據庫表的相同查詢仍然無法工作。

只是不能強調這對我造成了多少挫折。 我使用的XAMPP

1.8.3 [PHP:5.5.3]

+0

的問題與非ASCII字符,但我還不知道 –

回答

2

也可以是因爲 「內存不足」 的問題..只是做一個

ini_set("display_errors",1)"在開始和E_ALL錯誤

+0

仍然沒有工作的解決方案。我已經重新啓動了我的電腦。經過測試,這是多個瀏覽器,仍然會出現相同的錯誤。 – Koofah

+0

你能解釋一下memeory問題嗎?這是我在我的PC上的物理內存是內存不足還是什麼?因爲我的物理內存是3GB,目前沒有進程正在運行。 – Koofah

+0

當然。 PHP有一些最大內存允許...你可能想改變:幫助:https://drupal.org/node/207036 – Alex

1

您必須將字符集添加到您的pdo連接。

$Db = new PDO ("mysql:host=127.0.0.1;dbname=recycle;charset=utf8",'root',''); 
+0

糾錯:'utf8'不帶連字符 –