php - 喜欢系统检查用户是否喜欢/不喜欢按钮

标签 php mysql

这是我的类似系统的代码

<div class="btn like"> 
    <div class="boxcoracao">

<?php foreach ($db->checklike($postid,$session_id) as $chk) {
if($postid== $chk['pl_puid'] && $session_id == $chk['pl_uid']){
?>
<input type="hidden" name="likepid" id="likepid" value="<?php echo $postid ?>">
<input type="hidden" name="likemid" id="likemid" value="<?php echo $mem_id ?>">
<span class="coracao ativo" name="like"><br>&emsp;&emsp;&emsp;Love</span> 
<?php
}else{
?>
<input type="hidden" name="likepid" id="likepid" value="<?php echo $postid ?>">
<input type="hidden" name="likemid" id="likemid" value="<?php echo $mem_id ?>">
<span class="coracao" name="like"><br>&emsp;&emsp;&emsp;Love</span> 
    <?php   
        }
    }
    ?>

    </div>
</div>&emsp;&emsp;&emsp;

这里发生的情况是,如果数据库上存在 sessionID,则 if 语句将运行,否则将运行...但是编写此代码后,我的按钮消失了

sql查询

function checklike($pid,$mid){
        $query = "SELECT * FROM plike WHERE pl_puid = '$pid' AND plc_uid = '$mid'";
        $stmt = $this->dbh->prepare($query);
        $stmt->execute(array("0"));
        $active_data = $stmt->fetchAll(PDO::FETCH_ASSOC);
        return $active_data;
  }

我也对使用 forloop 感到困惑??..关于如何做到这一点有更好的想法...

如果用户没有点击喜欢,则此按钮指的是默认图标 enter image description here

这个按钮指的是用户点击的图标 enter image description here

但是上面的代码发生的情况是按钮消失了,因为按钮位于 if 语句内,我不知道如何做到这一点..请有任何想法..

最佳答案

您在 html 中错误地使用了 if else 语句。 看看这个: link

示例:

<? if ($condition): ?>
<p>Content</p>
<? elseif ($other_condition): ?>
<p>Other Content</p>
<? else: ?>
<p>Default Content</p>
<? endif; ?>

关于php - 喜欢系统检查用户是否喜欢/不喜欢按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43342800/

相关文章:

javascript - 如何从文本形式获取html脚本并在新窗口中执行?

php - <img src="{{ asset 上缺少资源

php - 将敏感数据存储在 JWT Payload 中是否安全?

php - SQL 按两列分组和排序

php - 攻击者有什么办法可以查看我服务器上 php 脚本中的源代码吗?

mysql - 在 MYSQL select 语句中使用 '%' 和列名?

javascript - 下拉列表未从数据库填充

MySQL - 行更新触发错误

mysql - Doctrine - 加载带有法语字符的 YAML 固定装置

mysql - 允许用户构建简单 Web 表单的数据库架构