我正在运行 mysql 查询来获取我的网站上所有等待用户批准或删除的用户评论。
我有一个基本的文件结构:
Reviews.php,它提取mysql结果和函数文件approve_review.php。
新的评论在 mysql 查询中顺利通过,但是当我尝试批准或删除评论时什么也没有发生,我没有收到任何错误或任何东西。
当点击批准时,假设将表 ptb_reviews.approved 从“0”更新为“1”,如果点击删除,同样适用,它将把评论从“0”更新为“1”。
(我仅为此目的包含批准代码,因为它们实际上与设置为删除的批准相同)
我使用review_id,以便它知道要批准或删除哪些评论以及 session ,以便只有用户才能批准或删除它们。
有人可以看一下,看看他们是否能找到让它发挥作用的方法吗?
评论.php:
<?php
$pending_set = get_pending_reviews();
while ($reviews = mysql_fetch_array($pending_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/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>
<? } ?>
approve_review.php:
function approve_review($review_id, $user) {
global $connection;
global $_SESSION;
$query = "UPDATE ptb_reviews
SET approved='1'
WHERE id=$review_id";
mysql_query($query, $connection);
}
<?php
require_once("session.php");
require_once("functions.php");
require('_config/connection.php');
approve_review ($_GET['review_id'], $_SESSION['user_id']);
header('Location: http://localhost/ptb1/reviews.php');
?>
最佳答案
i get no error or anything.
这可能是因为您没有检查错误。
每次调用数据库API函数时,都需要检查返回值。如果有任何错误,大多数函数都会返回false
,然后您需要调用另一个函数来检查错误的类型、错误消息等。
示例:
$result = mysql_query($query, $connection);
if (!$result) {
die('Invalid query: ' . mysql_error());
}
关于php - 将 mysql 值从 '0' 更新为 '1' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14026588/