【问题标题】:Ifstatement used to make a functionality button appear?If Statement 用于使功能按钮出现?
【发布时间】:2009-11-02 20:45:12
【问题描述】:

我在第二天(第 16 小时)试图让我的删除按钮用 PHP 做我想做的事。我有一个网站,它是一个包含用户个人资料的社交网络。用户可以将 cmets 留在其他用户的个人资料中。我正在尝试在指定区域放置一个删除链接,该链接仅在您查看自己的个人资料时显示,而在您查看其他人的个人资料时消失。我也不想创建删除确认页面。我希望页面重新加载选择删除的评论消失,并发送到我标记为已死的数据库。这是我目前所拥有的:

           <?php

           $query = "SELECT * FROM `ProfileComments` WHERE `ToUserID` = '".$prof->id."' ORDER BY `date` DESC, `time` DESC LIMIT 10";


           $request = mysql_query($query,$connection);


           while($result = mysql_fetch_array($request)) {





           $poster = new User($result['FromUserID']);

           echo "<div id='CommentProfile'>";
           echo "<div id='CommentPhotoProfile'>";
           echo "<a href='http://www.blah.org/Profile.php?id=".$poster->id."'>";
           echo "<img src='" . $poster->img('mini') . "' border='0'/>";
           echo "</a>";
           echo "</div>";
           echo "<div id='ProfileCommentBody' class= 'round_10px'>";
           echo "<div id='CommentNameProfile'>";
           echo "<div class='ProfileCommentTail'>&nbsp;</div>";
           echo "<a href='http://www.blah.org/Profile.php?id=".$poster->id."'>";
           echo $poster->first_name. " ". $poster->last_name. " <span style='font-weight:normal'>says...</span>";
           echo "</a>";
           echo "</div>";
           echo stripslashes(nl2br($result['commentProfileBody']));
           echo "<div id='CommentInfoProfile'>";
           echo date('M d, Y',strtotime($result['date']));
           echo " at " . date('g:i A',strtotime($result['time']));
           if ($poster->id == $prof->id)
           echo "<a href='http://www.blah.org/DeleteComment.php?id=".$prof->id."'>";
           echo " delete";
           echo "</a>";
           echo "</div>";
           echo "</div>";
           echo "</div>";
           }

           ?>

我是否需要在我已经拥有的用于组成 cmets 的查询下方进行单独查询? 我需要添加到该查询吗? 如何使删除按钮仅在用户查看自己的页面时出现? 在我选择删除并在数据库中将其标记为死后,如何使页面重新加载而评论消失?

提前谢谢你

【问题讨论】:

    标签: php xhtml if-statement


    【解决方案1】:

    如果您在授权删除权限后所做的只是隐藏或不隐藏按钮,请小心。

    如果用户想出另一种调用删除操作的方法,那么这种授权检查将不起作用。例如,如果您的实现使用对删除命令进行编码的“删除 URL”,并且您的按钮仅发布到该 URL,那么当按钮被隐藏时,用户可以手动发布删除命令。

    【讨论】:

    • 谢谢,很高兴知道,但在我到达那里之前我还有办法,我需要弄清楚如何让它发挥作用,然后我会担心的
    【解决方案2】:

    填写你的变量:

    if ($current_user_id == $profile_user_id)
        echo '<a href="deletelink">delete</a>';
    

    【讨论】:

    • 非常感谢,我如何让“deletelink”实际删除评论(代码)并将其标记为已死发送到数据库?
    • Ralph,您似乎正在寻找 RentACoder.com
    • SQL 查询将如下所示:DELETE FROM cmets WHERE id=#commentId#
    • 感谢 Heath 的鼓励,我认为这个网站应该是关于帮助他人的,而不是傲慢的垃圾言论
    • 他不是在诋毁你,但他是对的,因为这个网站不是为了让你在这里完成编码。但是,如果您需要更多帮助,请通过 franz -at-develophp 与我联系。
    【解决方案3】:

    这完全是蹩脚的代码,但只是一个随机的想法,因为你真的没有给我们任何可使用的东西。 把它当作它是什么:

    function getPageUserID()
    {
        return $_GET['userID'];
    }
    if ($user->userID == getPageUserID())
    {
     //show delete button
        echo '<button value="Delete">Delete</button>';
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-10-13
      • 2014-08-05
      • 2011-09-15
      • 1970-01-01
      • 2020-03-15
      • 2012-09-10
      • 2023-04-05
      相关资源
      最近更新 更多