2013-07-12 21 views
0

這是我的PHP腳本:JSON和啓用斜線

<?php 

header('Content-Type: application/json; charset=utf-8'); 
$link = mysql_pconnect("localhost", "test", "test") or die("Could not connect"); 
mysql_select_db("myradio") or die("Could not select database"); 

$arr = array(); 

$rs = mysql_query("SELECT * FROM radio1"); 

while($obj = mysql_fetch_assoc($rs)) { 
    $arr[] = $obj; 
} 
echo '{"success":true,"error":"","data":{"schedule":['.json_encode ($arr).']}}'; 
    ?> 

的JSON表現不錯,然而,斜線不會被轉義,這會導致:

這是週末

時,它應該是: 這是在JSON內的週末

我也能操作我的PHP/JSON,使依賴於回調,它給出了這樣的錯誤消息:

({"success":false,"error":"File does not exist"}); 

它的工作很好,到目前爲止,只需要獲得更精細的細節吧,希望得到一些幫幫我!

至於我的PHP,我在MAMP服務器上使用PHP 5.4.10,如果這是任何相關性。

+0

您提供的代碼應該可以轉義斜線字符。 (將JSON的一半構建爲字符串有點瘋狂,但因爲它全部是靜態的,所以不會導致實際問題) – Quentin

+0

這是我受到啓發的代碼:http://radioplayer.bauerradio.com/schedule .php?callback =?&name = Viking + FM和http://radioplayer.bauerradio.com/schedule.php?callback=?&name=2+FM(錯誤消息的示例),但它不能正常工作。它顯示代碼,但我無法完成回調工作。 – avenas8808

回答

-1

閱讀文章this。它描述瞭如何通過在json_encode函數中使用不同的選項(如JSON_UNESCAPED_UNICODE)對它們進行編碼來避免像'\'這樣的特殊符號。

+0

這是我受到啓發的代碼:http://radioplayer.bauerradio.com/schedule.php?callback=?&name=Viking+FM和http://radioplayer.bauerradio.com/schedule.php?callback= ?&name = 2 + FM(錯誤消息的一個例子),但它不能正常工作。它顯示代碼,但我無法完成回調工作。 – avenas8808

+0

它在我的最後(當前)工作正常。結局是否堅持到底? –

+0

他們的代碼有效;但我沒有,我試圖在我的本地主機上模擬它作爲一個跨域,我的測試域是http://www.radio1localhost.co.uk爲我在做回調,我也有http ://www.radio2localhost.co.uk。 – avenas8808