2014-12-03 3 views
0

좋은 아침,PHP /로 json_encode NULL 문제

I가 이미 비슷한 문제가 다른 게시물을 읽을 수 있지만 아무 문제가 해결되지 않습니다,하지만 명심 내가 PHP와 JSON의 세계에 새로운 오전. 하지만 jss 형식으로 mssql 쿼리를 변환하려고합니다. 그래서 나중에 Google의 시각화 API를 통해이를 전달할 수 있습니다. 쿼리와 인코딩이 작동하고있는 것처럼 보이지만 인코딩이 NULL을 반환합니다.

정상적인 gotcha의 utf8 인코딩을 확인하고 encode (PHP 5.3.19 사용) 버전의 PHP를 사용했습니다.

엔코 드를 작동시키는 데 도움이 될 수 있습니까?

PHP 코드 : 설립

연결 : I 서버에이 코드를 실행하면

<?php 
// connection details known to be working fine 

if($conn) { 
echo "Connection established.<br><br>"; 
}else{ 
echo "Connection could not be established.<br />"; 
die(print_r(sqlsrv_errors(), true)); 
} 

$query = "SELECT * FROM tblMetalPrice"; 
$result = sqlsrv_query($conn, $query); 
while($row = sqlsrv_fetch_array($result, SQLSRV_FETCH_NUMERIC)); 


$arr = array($result); 
$encodedarray = array_map(utf8_encode, $arr); 

echo json_encode($encodedarray); 

sqlsrv_close($conn); 
?> 

가 다시 함께 제공됩니다.

[null]

아무에게도이 아이디어를 얻으려는 아이디어가 있습니까?

감사

크리스

+0

확인 PHP에서 DB 연결을위한 링크 : http://php.net/manual/en/mysqli.query.php –

+0

당신은 당신이, 확신 $ encodedarray에서 데이터를 가져 오는 중입니까? –

답변

1

내가 해결 방법이 있었다 :

$query = "SELECT * FROM tblMetalPrice"; 
$result = sqlsrv_query($conn, $query); 
while($row = sqlsrv_fetch_array($result, SQLSRV_FETCH_NUMERIC)) 

{ 

$encodedarray = array_map(utf8_encode, $row); 

echo json_encode($encodedarray); 

} 
0

이 시도가 :

$query = "SELECT * FROM tblMetalPrice"; 
$result = sqlsrv_query($conn, $query); 
while($row[] = sqlsrv_fetch_array($result, SQLSRV_FETCH_NUMERIC)); // Fetch and stor in array 


$arr = array($row); // make parent array 
$encodedarray = array_map(utf8_encode, $arr); 

echo json_encode($encodedarray); 

당신은 잘못 $ 결과를 전달했습니다. $ row는 결과를 포함합니다.

+0

답장을 보내 주셔서 감사합니다. 100 % 작동하지 않았지만 대답을 해 주셨습니다. – Kris

+0

지금 받고있는 오류가 무엇입니까? –

+0

괜찮아요. 이제 내 대답을 볼 수 있습니다. :) 감사합니다. 올바른 방향으로 나를 지적 해 주셨습니다. – Kris