2014-04-15 5 views
1

데이터베이스에서 일부 정보를 반환하고 싶습니다. 문제는 MySQL에서 쿼리를 실행할 때 잘 작동하지만 PHP에서 동일한 쿼리를 실행하면 작동하지 않습니다. 9보다 작은 한계를 설정하면 작동합니다. 9 이상의 모든 것은 빈 화면을 반환합니다. 내 테이블에는 현재 40 개가 넘는 행이 있습니다.print_r은 모든 mysql 결과를 반환하지만 json_encode는 아무 것도 반환하지 않습니다.

내가 print_r ($ results)을 시작할 때. 모든 행이 반환되지만 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. 

의 제한이 나는 데이터베이스를 삭제하고 작업에도 테스트하지 또 틀렸어 시도가있는 경우로 json_encode ($ 결과)와 함께, 그것은 빈 화면 만 반환 반환 다른 데이터베이스 테이블에 대해 동일한 쿼리를 실행해도 여전히 작동하지 않습니다.

얼마나 많은 좌절감이 나를 일으키는 지 강조 할 수 없습니다. 내가 XAMPP

1.8.3를 사용하고 [PHP : 5.5.3]

+0

문제는 비 ASCII 문자와 관련이 있지만 해결책을 아직 모릅니다. –

답변

2
이 때문에 "메모리 부족"문제가 될 수

.. 그냥 할

처음에 ini_set("display_errors",1)"E_ALL 오류

+0

여전히 작동하지 않습니다. 컴퓨터를 다시 시작했습니다. 여러 브라우저를 테스트했지만 여전히 동일한 오류가 발생합니다. – Koofah

+0

축하 문제에 대해 설명해 주시겠습니까? 내 PC에있는 내 물리적 메모리가 메모리 부족 또는 무엇입니까? 내 실제 메모리가 3GB이고 현재 실행중인 프로세스가 없습니다. – Koofah

+0

. PHP는 최대 메모리를 허용했습니다 ... 당신은 그걸 바꾸고 싶을 수도 있습니다 : help : https://drupal.org/node/207036 – Alex

1

pdo 연결에 문자 세트를 추가해야합니다.

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

수정 : 하이픈없는'utf8' –

관련 문제