所以在我的网站上,我使用了一个TinyMCE窗口。在当前的方式中,PHP从数据库中获取条目,将其解码为JSON。然后页面内的javascript会解析它。然而,如果有一个style='color:#fff'
或类似的东西在那里,javascript不能解析JSON。此外,空格或感叹号也会打断它。我不想用这么易碎的东西。还有其他解决办法吗?
$.ajax({
type: "POST",
url: "Including/php/fetcher.php",
data: { identifier: identifier, page: page }
}).done(function( msg ) {
var data = $.parseJSON(msg);
var text = data["text"];
tinyMCE.activeEditor.setContent(texten);
};
fetcher.php
$conn = mysql_connect($row['ipdb'],$row['usernamedb'], $row['wwdb']) or die("err");
$db = mysql_select_db($row['usernamedb']) or die("err");
$identifier = $_POST['identifier'];
$page = $_POST['page'];
$qry = "SELECT text FROM ".$page." WHERE identifier='$identifier'";
$result = mysql_query($qry) or die("An error occurred ".mysql_error());
$obj = mysql_fetch_object($result);
$text = $obj->text;
echo '{ "text" : "' . $text . '"}';
你可以使用
echo json_encode( array("text" => $text, "variable2" => $value2) );
确保它是有效的JSON并正确转义,这样它就不会被引号,空格等打断