0

Web サイトの like/unlike 関数を実行しようとしています。「投稿」と呼ばれるデータベーステーブルに接続されている単一の作業用のものを作成しました。

テーブル「posts」には、id、name、like、like という 4 つの列があります。

私の問題は、同じコードを使用したいが、「会場」と呼ばれる別のテーブルで使用したいということです。このテーブルには同じ 4 つの列がありますが、それらは vID、場所などと呼ばれます。また、テーブル「venue」には、テーブル「posts」のような単一の ID ではなく、複数の vID があります。

何をすべきかわからない?:


    <html>
<head>
    <script src = "http://code.jquery.com/jquery-1.3.2.min.js"></script>
    <script>
        function doAction(postid,type){
            $.post('doAjax.php',{postid:postid, type:type}, function(data){
                //if(isNaN(parseFloat(data))){
                    //alert(data);
                //}else{
                    $('#'+postid+'_'+type+'s').text(data);
                });
            }
        //}
    </script>
</head>
<body>
    <?php

        include('db.php'); // including database connection
        $postid= 1;
        $data = mysql_fetch_object(mysql_query('SELECT `like`, `unlike` from     posts WHERE id ="'.$postid.'"'));  

    ?>
    <a href="javascript:;" onclick="doAction('<?php echo $postid;?>','like');">Like (<span id="<?php echo $postid;?>_likes"><?php echo $data->like;?></span>)</a>
    <a href="javascript:;" onclick="doAction('<?php echo $postid;?>','unlike');">Unlike (<span id="<?php echo $postid;?>_unlikes"><?php echo $data->unlike;?></span>)</a>


    </body>


   <?php

include('db.php');

if($_POST['postid'] !='' && $_POST['type'] != ''){

        if($_POST['type']=='like'){
            mysql_query(' UPDATE posts SET `like`=`like`+1 WHERE id="'.(int)$_POST['postid'].'"');
            $num = mysql_fetch_row(mysql_query(' SELECT `like` FROM  posts WHERE id="'.(int)$_POST['postid'].'" LIMIT 1'));
        }elseif($_POST['type']=='unlike'){
            mysql_query(' UPDATE posts SET `unlike`=`unlike`+1 WHERE id="'.(int)$_POST['postid'].'"');
            $num = mysql_fetch_row(mysql_query(' SELECT `unlike` FROM  posts WHERE id="'.(int)$_POST['postid'].'" LIMIT 1'));
        }
                     echo $num[0];
                    (int)$_POST['postid'].'","'.$_SERVER['REMOTE_ADDR'].'")');
    }
      ?>    
4

1 に答える 1