2013-09-16 2 views
1

데이터베이스에서 정보를 가져 오는 데 문제가 있습니다. \/ 그래서 대신 "식품 & 물"이된다 "식품/물"앰퍼샌드가 JSONP의 슬래시로 바뀜

$json = json_encode($data); 

echo isset($_GET['callback']) 
    ? "{$_GET['callback']}($json)" 
    : $json; 

그것은 모든 & 표시를 interpretates : 나는 밖으로이 코드를 사용하여 JSONP로 넣어합니다. 아무도 나에게 문제가있는 것을 암시 할 수 있습니까?

+1

내 첫 번째 추측은 json_encode() 안에 문제가 있다는 것입니다. –

+0

'콜백 (callback) '은 무엇을합니까? – silkfire

+0

잘못된 결과의 구체적인 예를 제공 할 수 있습니까? –

답변

1

나는 그것을 고치는 법을 알았지 만 그것이 일어나는 이유는 알지 못했다. 기본적으로 나는 백 슬래시를 제거하고 모든 앞으로이 같은 &와 슬래시 대체 :

$json = json_encode($columns); 

$json = stripslashes($json); 
$json = str_replace("/","&", $json); 


echo isset($_GET['callback']) 
    ? "{$_GET['callback']}($json)" 
    : $json; 

그리고 그것은 내가 원하는 방식으로 일했다. 같은 문제가있는 다른 사람들에게 도움이되기를 바랍니다.

+0

게시물에 원시 입력을 게시 할 수 있습니까? – silkfire