我创建了一些网站,现在我创建了一个消息系统。为此,我创建了mysql inbox_msg base(from,to,subject,date,time,message,file1,file2,file3,unread)。 现在我不知道,如何创建PHP脚本来打印它的消息。 现在它看起来像这样:
<?
session_start();
$user = $_SESSION['login'];
$mysql_connect = mysql_connect("localhost", "root", "");
$mysql_select_db = mysql_select_db("site");
$sql = "SELECT * FROM `msg_inbox` WHERE `to` = '$user'";
$result = mysql_query($sql) or die(mysql_error());
$sql1 = "
UPDATE `msg_inbox`
SET `unread` = 0
WHERE `to` = '" . mysql_real_escape_string($user) . "'
";
$result1 = mysql_query($sql1) or die(mysql_error());
while ($row = mysql_fetch_array($result)) {
<br>
From: <?= $row['from'] ?>
<br>
Date: <?= $row['date'] ?> at <?= $row['time'] ?>
<br>
<br>
<?= $row['message'] ?>
<br>
<HR>
}
?>
但这并不好:我有一个问题是添加删除按钮和其他。你能帮助我吗? 谢谢!
答案 0 :(得分:2)
首先,while循环中的代码是无效的PHP,因此脚本肯定不会像发布的那样运行。您需要做的是将该代码标记为非PHP(即通过在while循环之后关闭PHP脚本标记并在结束之前重新打开来标记HTML标记)或使用诸如echo
之类的输出机制PHP中的函数。
以下是使用echo重写while循环的方法:
while ($row = mysql_fetch_array($result)) {
echo("<br/>From: ".$row['from']."<br/>");
echo("Date: ".$row['date']." at ".$row['time']."<br/><br/>");
echo($row['message']);
echo("<br/><HR>");
}
就删除按钮而言,您可以将其作为提交类型的HTML输入元素添加到页面中,并将其放在HTML form
元素中。当用户单击该按钮时,表单将执行HTTP POST或GET(取决于您在method
元素上放置的form
属性)。 POST或GET的页面由form
元素的另一个属性控制,名为action
。
以下是一个例子:
<form id='frmMessageView' name='frmMessageView' method='POST' action='delete_message_script.php'>
<input id='btnDelete' name='btnDelete' type='submit' value='Delete Message' />
</form>
在上面的示例中,当用户单击“删除消息”按钮时,浏览器将对delete_message_script.php脚本执行POST HTTP请求。
您可能希望阅读有关HTML表单元素以及表单如何工作的更多信息(即POST和GET请求之间的区别,请求变量以及不同类型的输入元素;另外,请阅读PHP如何允许您处理HTTP请求变量)。在表单发布给您的PHP脚本中,可能需要跟踪用户单击哪个按钮(如果有多个)以及需要删除哪个消息。
最后,一旦你明白了,请阅读表格回复。这是回发到同一页面(脚本)的机制。