2014-07-17 50 views
2

我想用PHP来连接到数据库服务器,然后回显数据作为JSON所以后来我就可以在Android中使用它,但JSON显示/\/例如 如果http://www.google.com/是在数据库 如果其显示为JSON不会显示MySQL数据正确:使用PHP

"http:\/\/www.google.com\/" . 

我做了连接,所有的,这里是我如何获取数据

try { 
    $stmt = $db->prepare($query); 
    $result = $stmt->execute($query_params); 
}catch (PDOException $ex) { 
    $response["success"] = 0; 
    $response["message"] = "Database Error1. Please Try Again!"; 
    die(json_encode($response)); 
} 
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) 
$array[] = $row; 
echo json_encode($array); 
+0

必须在数据库之前将添加斜线,使用http://php.net/manual/en/function.stripslashes.php –

+0

我用了一段时间后,该行字符串,它说你必须在一个字符串上使用它,而不是一个数组,我不知道该把它放在哪里 – user3469432

+0

无论你是在一个启用了register_globals的石器时代PHP,或者你正在双重转义进入数据库或拔出的分贝。 –

回答

1

这是有效的JSON,并对其进行编码的正确方法,请参见http://codepad.viper-7.com/6PbdmJ

当它在例如javascriptphp解码,你会得到你原来的网址回:

的javascript:

JSON.parse('"http:\/\/www.google.com\/"'); 

PHP:

var_dump(json_decode(json_encode('http://www.google.com/'))); 
1

你需要你的JSON解码...运行PHP examp你会明白我的意思:

$encode = json_encode("https://www.google.com/"); 

echo $encode; 

echo "<br />"; 

echo json_decode($encode,true); 

所以,如果你发送编码的json,你应该在android中解码它以正确使用它。

这个环节应该有所帮助: How to parse JSON in Android