脚本不起作用 [英] Script doesn't working

查看:88
本文介绍了脚本不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好。首先,请允许我说刚开始编程并抱歉我的英语不好。无论如何。

此代码用于喜欢系统。我不知道为什么这段代码不起作用。



代码:

Hi. At the outset, let me say that just starting to program and sorry for my bad English. Anyway.
This code is used to like system. I don't know why this code doesn't working.

Code:

<?php
    $mysqli = new mysqli('localhost', 'root','');
    $mysqli->select_db('like');

    if(isset($_POST['liked']))
    {
        $postid = $_POST['postid'];
        $result = mysqli_query("SELECT * FROM posts WHERE postid=$postid");
        $row = mysqli_fetch_array($result);
        $n = $row['likes'];

        mysqli_query("UPDATE posts SET likes=$n+1 WHERE id=$postid ");
        mysqli_query("INSERT INTO likes(userid, postid) VALUES(1,$postid)");
        exit();
    }
?>

<!DOCTYPE html>
<html>
<head>
    <title>LIKE and UNLIKE</title>
    <style type="text/css">
        .content
        {
            width:50%;
            margin:100px auto;
            border:1px solid #cbcbcb;
        }
        .post
        {
            width:80%;
            margin:10px auto;
            border:1px solid #cbcbcb;
            padding:10px;
        }
    </style>
</head>
<body>
    <div class="content">
      <?php
         $query = $mysqli->query("SELECT * FROM posts");
    
        while($row = mysqli_fetch_array($query)) { ?>
        <div class="post">
            <?php echo $row['text']; ?> <br>

            <?php      
                $result = mysqli_query($mysqli,"SELECT * FROM likes WHERE userid='1' AND postid=".$row['id']."");
                
                if(mysqli_num_rows($result) == 1) { ?>
                
                    <span><a href="" class="unlike" id="<?php echo $row['id']; ?>">unlike</a></span>
          <?php } else{ ?>
                         <span><a href="" class="like" id="<?php echo $row['id']; ?>">like</a></span>
           <?php } ?>
        </div>
       <?php } ?>

    </div>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
        $(document).ready(function(){       
            $('.like').click(function(){
                var postid = $(this).attr('id');
                $.ajax({
                    url:'index.php',
                    type: 'post',
                    async: false,
                    data:{
                        'liked': 1,
                        'postid': postid
                    }
                    success:function(){

                    }
                });
            });
        });
</script>
</body>
</html>





表sql:



likes.sql





Table sql:

likes.sql

CREATE TABLE `likes` (
  `id` int(11) NOT NULL,
  `userid` int(11) NOT NULL,
  `postid` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1





帖子.sql





posts.sql

CREATE TABLE `posts` (
  `id` int(11) NOT NULL,
  `text` text NOT NULL,
  `likes` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1





users.sql



users.sql

CREATE TABLE `users` (
  `id` int(11) NOT NULL,
  `name` varchar(55) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;





我尝试了什么:



我尝试更改代码:



What I have tried:

I tried change code:

<?php

    if(!isset($_POST['liked']))
    {
        $postid = $_POST['postid'];
        $result = mysqli_query($mysqli,"SELECT * FROM likes WHERE postid='$postid'");
        $row = mysqli_fetch_array($result) or die("ERROR: ".mysqli_error($mysqli));
        $n = $row['likes'];

        $result = mysqli_query($mysqli,"UPDATE posts SET likes=$n+1 WHERE id=$postid ");
        $result = mysqli_query($mysqli,"INSERT INTO likes (userid, postid) VALUES(1,$postid)");
        exit();
    }
    ?>

推荐答案

mysqli = new mysqli(' localhost' ' root'' ');
mysqli = new mysqli('localhost', 'root','');


mysqli-> select_db(' 喜欢');

if(isset(
mysqli->select_db('like'); if(isset(


_POST [' 喜欢']))
{
_POST['liked'])) {


这篇关于脚本不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆