【发布时间】:2014-06-17 00:42:23
【问题描述】:
我正在网站上实施反馈系统,但用户只能向其他用户提供一次反馈。
我能想到的唯一方法是创建另一个数据库,通过跟踪 id 显示谁留下了谁的反馈,但我确信有一种更简单的方法可以实现相同的结果,我只是没有看到它?还是我最初计划的将信息放入另一个数据库的方式是最好的解决方案?
我目前的代码是:
<?php
if(isset($_POST['good'])) {
$thumbsUp = mysql_query("UPDATE users SET good_feedback = '". $newGood1 ."' WHERE `username` = '". $profileUser ."'");
if($thumbsUp) {
echo 'You have left feedback';
}
}
if(isset($_POST['bad'])) {
$thumbsUp = mysql_query("UPDATE users SET bad_feedback = '". $newGood2 ."' WHERE `username` = '". $profileUser ."'");
if($thumbsDown) {
echo 'You have left bad feedback';
}
}
if (logged_in() == true && $user_data['username'] != $profile_data['username']) {
echo '<p style="font-size: 17px; margin-left: 22%;">Leave Feedback: </p>';
echo '<form method="post" style="margin-left: 8%;">
<button class="btn-u" name="good">Good Feedback</button>
<button class="btn-u" name="bad">Bad Feedback</button>
</form>';
} else {
echo 'you cannot leave feedback for yourself!';
}
?>
提前感谢您的任何回答。
请注意:我知道上面的代码对 SQL 注入是开放的
【问题讨论】:
-
警告您的代码极易受到 sql 注入攻击!
-
@DanielA.White 谢谢