0


在将 jquery 与 php 和 php 与 jquery 混合方面,我是个新手。
我必须归档 script.php 和 test.php
我设法使用 jquery 将变量从 test.php 发布到 script.php,但现在我想将变量从 script.php 读取到 test.php
我的 test.php 是这样的:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/
libs/jquery/1.3.0/jquery.min.js">
</script>
<script type="text/javascript" >
$(function() {
$(".submit").click(function() {
var like = $("#like").val();
var rid = $("#rid").val();
var dataString = 'like='+ like + '&rid='+ rid;
//alert('like='+ like + 'rid='+ rid);

$.ajax({
type: "POST",
url: "script.php",
data: dataString,
success: function(){
$('.success').fadeIn(200).show();
}
});

return false;
});
});
</script>
<form method="post" name="form">
<input type="hidden" value="3" id="rid" name="rid">
<button type="submit" value="like" class="submit" id="like" name="like">test</button>
<span class="default"> <?=$value?></span>
<span class="success" style="display:none"> You like this</span>
</div></form>

我的 script.php 是:

<?php
if($_POST['like']=="like")
{
    require_once"dbconfig.php";
$rid=$_POST['rid'];
mysql_query("INSERT INTO likes set like_value='1', video_id='".$rid."'");
$sql=mysql_query("SELECT * FROM likes where like_value='1' and video_id='".$rid."'")or die(mysql_error());
$result=mysql_num_rows($sql);

}

?>

我想显示 $result 而不是“你喜欢这个”。我正在尝试这样做,因为我不想刷新整个页面(test.php)。

谢谢!

4

1 回答 1

1

在您的script.php中,添加最后一行echo $result;,如下所示:

<?php
if($_POST['like']=="like")
{
    require_once"dbconfig.php";
    $rid=$_POST['rid'];
    mysql_query("INSERT INTO likes set like_value='1', video_id='".$rid."'");
    $sql=mysql_query("SELECT * FROM likes where like_value='1' and video_id='".$rid."'")or die(mysql_error());
    $result=mysql_num_rows($sql);
    echo $result; //Add this line
}
?>

在你的 text.php 脚本中:

$.ajax({
    type: "POST",
    url: "script.php",
    data: dataString,
    success: function(result){ 
        $('.success').html(result); //Add this line
        $('.success').fadeIn(200).show();
    }
});

为什么要result在成功函数中添加参数?这是因为 result 将是您的响应script.php,在您的情况下是$result.

于 2013-01-11T01:23:04.963 回答