我在我的网站上有一个评论系统,用户可以评价其他用户。当用户登录时,他们可以进入他们的待审核部分,他们可以批准或删除评论。获取文章以通过id在mysql表中更新?
我通过表ptb_reviews的评论,并列在页面reviews.php上。然后,每个审阅都会批准或删除链接,该链接转到approve_review.php或delete_review.php,并且存在SQL函数,用于在我的表中设置相关列,以便批准或删除,从0到1.
因此,如果用户批准审核,则更新会在表格中批准1,其中该特定审核已被选择为批准,然后其相同以供删除。
我遇到了一个问题,当我尝试批准或删除评论时,我会回显查询来测试它以查看发生了什么,并查看它是否正在做我要求的操作以及我得到这样的:
UPDATE ptb_reviews SET approved = 1 WHERE id = '' LIMIT 1
这意味着它不能找到审查ID,它不会因此更新适用于1表酌情这项审查。
,这里是我的reviews.php代码在审查通过拉:
<?php
$reviews_set = get_new_reviews();
while ($reviews = mysql_fetch_array($reviews_set)) {
$review_id = (int) $_GET['review_id'];
// Just this, is a great security enhancement. Forces the variable to be int (like all id's are).
// You can also check if its a numeric by doing
if (is_numeric($review_id)){
// continue with the update query
} else {
// something fishy is going on..
}
?>
<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/approve_review.php?review=<?php echo $reviews['review_id']; ?>"><div class="approve"></div></a>
<a href="includes/delete_review.php"><div class="delete"></div></a>
</div>
<? } ?>
而且接下来是我的代码携带的了SQL功能approve_review.php:
<?php
require_once("session.php");
require_once("functions.php");
require('_config/connection.php');
$query = "UPDATE ptb_reviews SET approved = 1 WHERE id = '$review_id' LIMIT 1";
mysql_query($query, $connection);
echo $query;
die();
// See what is really sent to MySQL
if (!mysql_query($query, $connection)){
die(mysql_error());
}
?>
我米基本上问是没有更新的原因,因为它无法找到正在被批准或删除的评论的ID,我该怎么做才能更新它,以便它知道我要求它批准的评论或删除?
我还在学习PHP和MySQL,所以如果有人能告诉我或解释该做什么,那会很棒。
尝试调试$ _GET –
我看不出其中$ REVIEW_ID定义或包含在“代码那么就可以执行批处理查询.php的sql函数“,除非你已经通过了它,否则它将是空的。同样,您在$ review_id周围的查询中的单引号可能会掩盖PHP变量 – sdjuan