php - 试图在 mysql 表中创建一个类似按钮的计数器,但是 UPDATE SET 不起作用

标签 php mysql xampp counter updates

所以我正在做一个学校项目来创建一个作品集展示网站,其中一个主要的必需功能是为图像创建一个喜欢的按钮。我正在使用 xampp 来托管文件和数据库。每次有人单击按钮时,我都试图让它变得如此简单,它会在表中的“喜欢”列中添加 +1,但它似乎不起作用。我对此还是陌生的,因此将不胜感激。 这是作为

的代码块
<h1><?php echo $_SESSION['name'] ?>'s work </h1>
<?php



$username ="root";
$password ="";
$hostname ="localhost";

//connection to database

$conn = mysqli_connect($hostname,$username,$password)
or die("unable to connect to my SQL");

$lastid = $_SESSION['user'];

$image3 = "SELECT * FROM staff.image WHERE `user`='$lastid' ";
$r=mysqli_query($conn, $image3);

while ($row = mysqli_fetch_array($r))
{
?>


<ul id="rig">
    <li>
        <a class="rig-cell">
            <?php   echo '<img src="data:image/jpeg;base64,' . base64_encode( $row['img'] ) . '" align="middle" height=50% " />'; ?> 

            <span class="rig-overlay"></span>
            <span class="rig-text"> <?php   echo $row['img_name']."<br>"; ?></span>




        </a>
            <form method="POST" action=""  class="radiowrapper" >
            <input class="like" type="submit" name="problem" value="<?php echo $row['img_id']; ?>" id="name_<?php echo $row['img_name']; ?>">
            </form>
    </li>
</ul>   

<?php
    if (isset ($_POST['problem']))
    {
        echo $sql = "UPDATE staff.image SET likes='".$row['likes']."'+1 WHERE img_id='".$row['img_id']."'";

    }
}
?>

我有另一个文件,让用户上传他选择的图像,并为它写一个名字,并将它保存在 staff.image 中。这里有一些截图

enter image description here

enter image description here

我不太明白这个问题,我一直在尝试不同的方法来编写 UPDATE 函数,但无济于事。如果我不清楚某些事情,您需要更多详细信息,我会立即发布。 提前致谢!

最佳答案

您想知道为什么它会回显查询吗?

很简单,你告诉它:

if (isset ($_POST['problem']))
{
    echo $sql = "UPDATE staff.image SET likes='".$row['likes']."'+1 WHERE img_id='".$row['img_id']."'";
    ^^^^

}

另外,您从未执行过查询。

所以,

//added this part after the while loop

if (isset ($_POST['problem']))
    {
        $sql = mysqli_query($conn, "UPDATE staff.image SET likes=likes+1 WHERE img_id='".$_POST['problem']."'");


    if($sql){
     echo "Success";
    }
    else {
       echo "<i>Houston, we have a problem:</i> " . mysqli_error($conn);
      }
}

关于php - 试图在 mysql 表中创建一个类似按钮的计数器,但是 UPDATE SET 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41475722/

相关文章:

mysql - 删除 mySQL 5.7.9 中的所有重复行?

mysql - 无法从 Netbeans 连接到 XAMPP MySQL

PHP Wordpress 插件 - 函数输出可以,但更新数据库时不行。

PHP artisan 返回未定义索引 : HTTP_USER_AGENT

php - 我应该将 PHP 项目放置在哪个目录中才能使其与 XAMPP 一起使用?

php - 使用 Laravel 5.2 从 Y-m-d 中存储在数据库中的日期计算年龄

php - 在 php 中添加日期会给出不同的结果

php - 浏览器保护用户IP地址吗?

php - 使用ionic2将图像插入Mysql数据库

MYSQL如何按顺序填充列