第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

自動(dòng)為用戶添加喜歡

自動(dòng)為用戶添加喜歡

PHP
米脂 2023-09-15 09:30:52
我想添加用戶喜歡在頁面加載上發(fā)帖,即如果用戶已經(jīng)喜歡該帖子但它不起作用,我想讓喜歡的按鈕顯示喜歡,這是我的ajax代碼for (var l = 0; l < 5; l++) {          this_comment_id = $('#like_check_'+l).attr('data-id');              $.ajax({                      url:"comment_post.php",                      type: 'POST',                     data:{comment_check:this_comment_id},                      dataType: 'text',                      success:function(data)                    {                            if (data.search("ok") > -1) {                                $('#like_check_'+l).addClass("red_heart");                          }else if(data.search("unliked") > -1){                                $('#like_check_'+l).removeClass("red_heart");                          }                    }              })    }它的目的是將 red_hearth 添加到用戶在此 html 元素中喜歡的帖子中<i onclick="like_post(this)" class="fas fa-heart float-right p-1 my-1 mr-3" data-id="1" id="like_check_0" data-toggle="tooltip" data-placement="top" title="I like it"></i><i onclick="like_post(this)" class="fas fa-heart float-right p-1 my-1 mr-3" data-id="2" id="like_check_1" data-toggle="tooltip" data-placement="top" title="I like it"></i><i onclick="like_post(this)" class="fas fa-heart float-right p-1 my-1 mr-3" data-id="3" id="like_check_2" data-toggle="tooltip" data-placement="top" title="I like it"></i><i onclick="like_post(this)" class="fas fa-heart float-right p-1 my-1 mr-3" data-id="4" id="like_check_3" data-toggle="tooltip" data-placement="top" title="I like it"></i><i onclick="like_post(this)" class="fas fa-heart float-right p-1 my-1 mr-3" data-id="5" id="like_check_4" data-toggle="tooltip" data-placement="top" title="I like it"></i>
查看完整描述

1 回答

?
白豬掌柜的

TA貢獻(xiàn)1893條經(jīng)驗(yàn) 獲得超10個(gè)贊

因?yàn)槲掖_實(shí)不使用 jQuery,所以嘗試使用它來回答問題是愚蠢的,因此會(huì)犯錯(cuò)誤,所以請(qǐng)理解,這就是為什么我在這里用普通的 Javascript 來回答。不知道表模式、函數(shù)的作用like_post或某人如何做某事unlike都會(huì)提出問題,但做出某些假設(shè),人們可以在這里忽略這一點(diǎn)。


如果您稍微修改 HTML 以刪除 ID 屬性(這實(shí)際上不是必需的)


<i class='fas fa-heart float-right p-1 my-1 mr-3' data-id='1' data-toggle='tooltip' data-placement='top' title='I like it'></i>

<i class='fas fa-heart float-right p-1 my-1 mr-3' data-id='2' data-toggle='tooltip' data-placement='top' title='I like it'></i>

<i class='fas fa-heart float-right p-1 my-1 mr-3' data-id='3' data-toggle='tooltip' data-placement='top' title='I like it'></i>

<i class='fas fa-heart float-right p-1 my-1 mr-3' data-id='4' data-toggle='tooltip' data-placement='top' title='I like it'></i>

<i class='fas fa-heart float-right p-1 my-1 mr-3' data-id='5' data-toggle='tooltip' data-placement='top' title='I like it'></i>

然后你可以從 HTML 元素中收集data-id值 - 大概這些值并不總是簡(jiǎn)單的,1,2,3,4,5但實(shí)際上是來自文章或數(shù)據(jù)庫的 ID - 所以實(shí)際上可能更像23,6,98,123,5(?)


var iCol=document.querySelectorAll( 'i[data-id]' );

var ids=[];


iCol.forEach( i=>{

    ids.push( i.dataset.id )

});

有了所有相關(guān)的 ID,您就可以向服務(wù)器發(fā)出單個(gè) Ajax 查詢,服務(wù)器將使用這些 ID 來處理用戶things之前喜歡的用戶。由于以下內(nèi)容是基本的jQuery,僅對(duì)原始內(nèi)容進(jìn)行了輕微修改,因此我在這里使用它而不是使用XMLHttpRequest或Fetch


$.ajax({  

    url:'comment_post.php',  

    type:'POST', 

    data:{ comment_check:ids },  // send the collected IDs

    dataType:'text',  

    success:function(json){

        json.liked.forEach( id => {

            document.querySelector('i[ data-id="'+id+'" ]').classList.add('red_heart')

        })

    }

});

檢查數(shù)據(jù)庫的 PHP 腳本:


<?php


    session_start();

    

    if( isset( $_POST['comment_check'] ) ) {

        

        $payload=[];

        $ids=explode( ',', $_POST['comment_check'] );

        

        $sql='select `comment_id` from `comment_like` where `liker_id`=? and `liked`="Y"';

        $stmt=$con->prepare( $sql );

        $stmt->bind_param( 's', $_SESSION['user_id'] );

        $status=$stmt->execute();

        $stmt->bind_result( $cid );

        

        

        $payload['status']=$status;

        $payload['user_id']=$_SESSION['user_id'];

        $payload['liked']=[];

        

        

        while( $stmt->fetch() ){

            if( in_array( $cid, $ids ) ) $payload['liked'][]=$cid;

        }

    

        

        header('Content-Type: application/json');

        exit( json_encode( $payload ) );

    }


?>


查看完整回答
反對(duì) 回復(fù) 2023-09-15
  • 1 回答
  • 0 關(guān)注
  • 113 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)