我想将PHP变量$uid
和$submissionid
发布到文件fblike.php。下面的Ajax格式正确吗?
<?php
ob_start();
session_start();
$uid = $_SESSION['loginid'];
$submissionid = mysql_real_escape_string($_GET['submissionid']);
$_SESSION['submissionid'] = $submissionid;
?>
<head>
<script type='text/javascript' src='jquery.pack.js'></script>
<script type='text/javascript'>
$(function(){
$("a.connect_widget_like_button").live(function(){
$.ajax({
type: "POST",
data: "action=vote_up&uid="+$(this).attr("uid")"&submissionid="+$(this).attr("submissionid"),
url: "fblike.php",
});
});
});
</script>
</head>
答案 0 :(得分:2)
如果你不需要,你真的不想使用expando属性,特别是因为这是链接...我会jsut做:
<a href="fblike.php?ction=vote_up&uid=1&&submissionid=1">Like</a>
然后你可以做一个简单的事情:
$("a.connect_widget_like_button").live('click', function(e){
e.preventDefault();
$.post($(this).attr('href'));
});
现在在php方面你需要知道值的位置。如果你像我在我的例子中所做的那样传递值,它们将在$_GET
中(即使它是一个POST请求)。如果您像在原始帖子中那样传递它们,则它们将位于$_POST
。
答案 1 :(得分:0)
您需要将数据作为数组/对象发送。这样的事情可以解决问题。
$(function(){
$("a.connect_widget_like_button").live(function(){
$.ajax({
type: "POST",
data: {
action: "vote_up",
uid: $(this).attr('uid'),
submissionid: $(this).attr('submissionid')
},
url: "fblike.php"
});
});
});