Php 消息交换应用程序
我正在尝试使用数据库创建一个消息交换应用程序。现在我有两个表:login_用户和“email”来存储消息。“email”字段是id、from_user、to_user、subject、message、date和read(布尔值)。 “收件箱”页面工作正常,可以正确显示邮件,但“我的已发送邮件”页面不能。发件人、邮件和日期显示正确,但当我单击查看邮件时,它会显示收件箱中的邮件。我有两个“收件箱”和“发送”页面,还有一个单独的“阅读”页面来显示邮件,所以我认为问题可能就在那里。你们能检查一下这个代码,看看能不能发现错误Php 消息交换应用程序,php,mysql,sql,email,Php,Mysql,Sql,Email,我正在尝试使用数据库创建一个消息交换应用程序。现在我有两个表:login_用户和“email”来存储消息。“email”字段是id、from_user、to_user、subject、message、date和read(布尔值)。 “收件箱”页面工作正常,可以正确显示邮件,但“我的已发送邮件”页面不能。发件人、邮件和日期显示正确,但当我单击查看邮件时,它会显示收件箱中的邮件。我有两个“收件箱”和“发送”页面,还有一个单独的“阅读”页面来显示邮件,所以我认为问题可能就在那里。你们能检查一下这个代码
<?php
$user = $_SESSION['username'];
$connect = mysql_connect("localhost", "root", "") or die (mysql_error());
mysql_select_db("login") or die(mysql_error());
$view_msg = mysql_query("
SELECT * FROM email where to_user = '$user'");
$row = mysql_num_rows($view_msg);
if ($row !=0){
echo "<table><tr>";
while($rows = mysql_fetch_assoc($view_msg)){
$id = $rows['id'];
$to_user = $rows['to_user'];
echo "<td>";
echo "From:";
echo "</td>";
echo "<td>" ;
echo "".$from = $rows['from_user']."";
echo "</td>";
echo "</tr>";
echo "<tr>";
echo"<td> </td>";
echo "</tr>";
echo "<tr>";
echo "<td>";
echo"Subject:";
echo "</td>";
echo "<td>" ;
echo "".$subject = $rows['subject']."";
echo "</td>";
echo "</tr>";
echo "<tr>";
echo"<td> </td>";
echo "</tr>";
echo "<tr>";
echo "<td>";
echo "Message: ";
echo "<td>";
echo "<td>" ;
echo "".$message = $rows['message']."";
echo "</td>";
echo "</tr>";
echo "<tr>";
echo"<td> </td>";
echo "</tr>";
}
echo "<tr>";
echo "<td colspan='2'> <a href='messages.php?id=compose&mid=$id&subject=RE:$subject&to=$from'>Reply </a></td>";
echo "</tr>";
echo "</table>";
if($to_user == $user) {
$up = mysql_query ("
UPDATE email SET read = '1' WHERE id ='$id'
");
}
}
else{
echo "You can't see the conversation!";
}
?>
首先,一个简单的用户名”或1=1--
将使我能够读取每个人的消息,因为您对SQL注入非常开放。@h2ooooooo这是我应用程序的第一个阶段,我将在解决此问题后处理所有安全问题。