PHP / Javascript:同时输入“id”

时间:2010-08-28 13:59:44

标签: php javascript

在我的朋友页面中,当您接受用户时,它会发送一个ajax调用:

function MeYouFriendNB(confirm){
 var c = confirm ? 'confirm' : 'ignore';
var fID = $('.fID').val();

    $.ajax({ 
       type: "POST",
       url: "misc/AddFriend.php",
    data: {
    mode: 'ajax',
        friend: c,
    uID : $('#uID'+fID).val(),
    fID : $('#fID'+fID).val(),
        bID : $('#bID'+fID).val()
    },
       success: function(msg){
$('#friend'+fID).slideUp('slow');
$('#Friendlist').prepend(msg);
 $('#theNewFriend').slideDown('slow');
        }
     });
}

在每个好友请求中,都有一个指向该功能的链接:

<?php
while($showW = mysql_fetch_array($friendsWaiting)){
echo "<div id='friend".$showW['id']."' style='position: relative; background: #3a5f6e;'>";
?>
        <input type="hidden" name="fID" class="fID" value="<? echo $sInfo["id"]; ?>">
    <input type="hidden" name="uID" id="uID<? echo $showW["id"]; ?>" value="<? echo $sid; ?>">
<input type="hidden" name="fID" id="fID<? echo $showW["id"]; ?>" value="<? echo $showW["id"]; ?>">
<input type="hidden" name="bID" id="bID<? echo $showW["id"]; ?>" value="<? echo $showW["bID"]; ?>">

    <?php
echo "<div style='position: absolute; top: 15px; right: 105px;'>
<a href='javascript:void(0);' onclick='MeYouFriendNB(true);' style=' margin-right: 45px; color: #FFF;'>Bekräfta</a>
 <a href='javascript:void(0);' onclick='MeYouFriendNB(false);' style='color: #ccc;'>Ignorera</a></div>";
}
?>

但每次发送ajax调用时,它都会向每个friendrequest提供相同的fID,bID和uID。例如,如果我有5个朋友请求,他们都有相同的fID,uID和bID。

正如你所看到的,我试图通过将<? echo $showW["id"]; ?>添加到id的fID,uID和bID来使bID和uID以及fID的id唯一,并且在函数中,我创建了一个var fID,检查id的类.fID,它们都有...但是这没有用,它仍然向ajax调用发送相同的id

希望你能帮助我

2 个答案:

答案 0 :(得分:1)

您没有正确打开PHP脚本标记。如果您需要短标签,可以使用

<?=$sInfo["id"]; ?>

当然,如果可能,你应该避免这样做。否则它应该是

<?php echo $sInfo["id"]; ?>

答案 1 :(得分:0)

我会这样做:(不确定这是否能解决你的问题)

使用Javascript:

function MeYouFriendNB(confirm, uID, fID, bID){
    var c = confirm ? 'confirm' : 'ignore';

    $.ajax({ 
        type: "POST",
        url: "misc/AddFriend.php",
        data: {
            mode: 'ajax',
            friend: c,
            uID: uID,
            fID: fID,
            bID: bID
        },
        success: function(msg){
            $('#friend'+fID).slideUp('slow');
            $('#Friendlist').prepend(msg);
            $('#theNewFriend').slideDown('slow');
        }
    });
}

PHP:

<?php while($showW = mysql_fetch_array($friendsWaiting)): ?>
    <div id="friend<?php echo $showW['id']; ?>" style="position: relative; background: #3a5f6e;">
        <div style="position: absolute; top: 15px; right: 105px;">
            <a href="javascript:void(0);" onclick="MeYouFriendNB(true, <?php echo $showW["id"]; ?>, <?php echo $showW["bID"]; ?>, <?php echo $sid; ?>);" style="margin-right: 45px; color: #FFF;">Bekräfta</a>
            <a href="javascript:void(0);" onclick="MeYouFriendNB(false, <?php echo $showW["id"]; ?>, <?php echo $showW["bID"]; ?>, <?php echo $sid; ?>);" style="color: #ccc;">Ignorera</a>
        </div>
    </div>
<?php endwhile; ?>