简体   繁体   English

使用mysql将删除列更新为1,其中评论ID为“ x”?

[英]update delete column to 1 where review id is 'x' using mysql?

I've asked a similar question before however i've done alot of changes to my script and my question is now different to my last question. 我之前曾问过类似的问题,但是我对脚本进行了很多更改,现在的问题与上一个问题有所不同。 So now i've done these changes this should all work fine however it isn't. 因此,现在我完成了这些更改,这应该可以正常工作,但事实并非如此。

I've basically got user reviews where a user can delete or approve reviews. 我基本上有用户评论,用户可以在其中删除或批准评论。 I am focusing purely on the delete function at the moment. 我现在只专注于删除功能。

We pull the reviews through in reviews.php and a the user can click delete which points to delete_review.php which then runs the sql function stored in functions.php. 我们通过reviews.php中的评论,用户可以单击delete指向delete_review.php,然后运行存储在functions.php中的sql函数。

I've listed the exact code layed how it works below but besides me spending ages trying to work out why it won't work i can't figure it out. 我已经列出了确切的代码,奠定了它在下面的工作方式,但是除了我花了很多时间试图弄清为什么它不起作用,我无法弄清楚。 When we click delete it links to delete_review.php but it won't find the review id which is the id of the review in which to delete. 当我们单击删除时,它链接到delete_review.php,但是找不到要删除的评论的ID。

Can someone please show me how i can fix this. 有人可以告诉我如何解决这个问题。 thank you. 谢谢。

review.php review.php

<?php
    $reviews_set = get_new_reviews();
    while ($reviews = mysql_fetch_array($reviews_set)) {
?>

    <div class="prof-content-pend-reviews" id="reviews">
    <div class="pend-review-content">
    <?php echo "{$reviews['content']}"; ?>
    </div>
    <div class="message_pic">
    <?php echo "<a href=\"profile.php?id={$reviews['from_user_id']}\"><img width=\"50px\" height=\"50px\" src=\"data/photos/{$reviews['from_user_id']}/_default.jpg\" /></a>";?>
    </div>

    <div class="forum-text">
    <?php echo "Posted by {$reviews['display_name']}"; ?> <?php echo "".$age." days ago"; ?>
    </div>

    <a href="includes/delete_review.php?review=<?php echo $reviews['review']; ?>"><div class="delete"></div></a>
    </div>

    <? }  ?>

function.php function.php

function delete_review($review, $user) {
                        global $connection;
            global $_SESSION;
                        $query = "UPDATE ptb_reviews
                                    SET deleted='1'
                                    WHERE id=$review 
                                    AND to_user_id=$user";
            mysql_query($query, $connection);
                }   


function get_new_reviews() {
            global $connection;
            global $_SESSION;
            $query = "SELECT r.from_user_id, p.display_name, r.content, r.id reviews_id, r.date_added
                        FROM ptb_reviews r, ptb_profiles p
                        WHERE r.to_user_id =".$_SESSION['user_id']."
                        AND r.deleted = '0'
                        AND r.read_review = '0'
                        AND p.user_id = r.from_user_id
                        ORDER BY r.date_added DESC ";


                        $reviews_set = mysql_query($query, $connection);
            confirm_query($reviews_set);
            return $reviews_set;
        }  

delete_review.php delete_review.php

    <?php
    require_once("session.php"); 
    require_once("functions.php");
    require('_config/connection.php');
    delete_review ($_GET['review'], $_SESSION['user_id']);
    ?>

1- check if you make session start session_start(); 1-检查您是否使会话开始session_start(); in the begining of your review.php file 在您的review.php文件的开头

2- look at this 2-看这个

   $query = "SELECT r.from_user_id, p.display_name, r.content, r.id reviews_id, r.date_adde
                                                                   ^--------what this space ?

3- try to do global $_SESSION['user_id'] in your function. 3-尝试在您的函数中执行global $_SESSION['user_id']

4 be sure if its $reviews or $reviews_id here as ROY Finley mentioned 4确保如$reviews_id ROY FinleyROY Finley所述,此处的$reviews$reviews_id

   <a href="includes/delete_review.php?review=<?php echo $reviews['review']
                                                                      ^----------here

I think this: 我认为这:

 $reviews['review']

maybe should be this: 也许应该是这样的:

 $reviews['reviews_id']

not sure, your code needs some improvement. 不确定,您的代码需要改进。 You should really look into mysqli or PDO. 您应该真正研究mysqli或PDO。 All of this could easily be done with a simple class. 所有这些都可以通过一个简单的类轻松完成。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM