我有这段代码使用JQuery将JSON数据发送到php文件,但它不起作用。它在控制台中没有显示错误但不输出。如果我使用var_dump,它会在php文件中输出array(0){}。这是JQuery代码:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<?php
function searchResults($q) {
$host = "http://search.twitter.com/search.atom?q=" . urlencode( $q ) . "&rpp=100";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $host);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
//Raw xml
$result = curl_exec($ch);
curl_close($ch);
$xml = simplexml_load_string($result);
return json_encode($xml);
}
?>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js">
</script>
</head>
<body>
<script type="text/javascript"> var msg_top = <?php echo
searchResults('windows');?>;
</script>
<script type="text/javascript">
$(document).ready(function()
{
$.ajax({
url: "script.php",
type: "POST",
dataType: "json",
data: msg_top,
success: function(){
alert("success");
}
});
alert("failure");
});
</script>
</body>
</html>
这是我的php代码:
<?php
var_dump($_POST);
?>
答案 0 :(得分:0)
data: "msg_top",
应该没有引号:
data:msg_top,
答案 1 :(得分:0)
在这一行:
var msg_top = <?php echo searchResults('windows');?>;
制作字符串json:
var msg_top = JSON.parse("<?php echo searchResults('windows');?>");
以及 data: msg_top
答案 2 :(得分:0)
你试过吗
$msg = json_decode(stripslashes ($_POST['msg_top']), true);