[英]JSON data sent using JQuery to php not working
我有这段代码,可以使用JQuery将JSON数据发送到php文件,但无法正常工作。 它在控制台中显示无错误,但不输出。 如果使用var_dump,它将在php文件中输出数组(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);
?>
data: "msg_top",
应该没有引号:
data:msg_top,
在这行上:
var msg_top = <?php echo searchResults('windows');?>;
将字符串设为json:
var msg_top = JSON.parse("<?php echo searchResults('windows');?>");
还有 data: msg_top
你有没有尝试过
$msg = json_decode(stripslashes ($_POST['msg_top']), true);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.