为什么这些更新& INSERT INTO查询不起作用? PHP& MySQL的

时间:2015-03-01 12:53:40

标签: php mysql

我有2个查询。查询#1更新数据库中的一些内容,查询#2将一些数据插入表中。

代码:

function add_like($id) {

    $connection = new mysqli($host, $username, $password, $database);

    $id = $connection->real_escape_string($id);

    $query = $connection->query("UPDATE `posts` SET `post_likes` = `post_likes` + 1 WHERE `id` = '$id'");
    $likes_query = $connection->query("INSERT INTO `likes` VALUES (".$_SESSION['user_login'].", $id)");
}

第一个查询($query)应该像数据库一样添加1。所以从0开始应该+1。相反,它确实+12。

第二个查询($likes_query)不是INSERT INTO likes

非常感谢任何帮助。谢谢!


更新

将第二个查询更改为:

$likes_query = $connection->query("INSERT INTO `likes` (`user_id`, `post_id`) VALUES ('$user', '$id')");

1 个答案:

答案 0 :(得分:0)

最终代码:

function add_like($id) {
    if (isset($_SESSION['user_login'])) {
        $user = $_SESSION["user_login"];
    }
    else {
        $user = "";
    }

    $connection = new mysqli($host, $username, $password, $database);

    $id = $connection->real_escape_string($id);

    $query = $connection->query("UPDATE `posts` SET `post_likes` = `post_likes` + 1 WHERE `id` = '$id'");
    $likes_query = $connection->query("INSERT INTO `likes` (`user_id`, `post_id`) VALUES ('$user', '$id')");
}

所有问题都已解决。感谢您的所有意见!