如果可能的话,我正在寻找一些建议。 PHP不是我写的主要语言。它通常是带有C#的asp.net但是我帮助了一个网站的朋友并且他们要求php。
我为他们创建了一个内部邮件系统。我有一个收件箱页面,每个记录都有一个勾选框。目前,您可以勾选多个方框,然后通过提交表单删除所选记录。我的朋友要求提供另一个按钮,可以单击该按钮将所选电子邮件标记为已读(如电子邮件收件箱)。我不确定如何执行此操作,因为我知道只需在表单中添加另一个提交按钮即可将其他内容称为“无法工作”。道歉,我不确定我是否能很好地解释自己。
撰写
$query ="Select im.ID, first_name, last_name, sender_ID, createddate, recipient_ID, read_mail, subject from internal_mail im join characters c on im.sender_ID = c.ID where im.recipient_name like '%".$character[first_name] . " " . $character[last_name] ."%' and im.active = 1";
$results = mysql_query($query);
$rows_events = mysql_num_rows($results);
if($rows_events != 0){
?>
<table>
<tr>
<td></td>
<td width="200">
From
</td>
<td width="150">
Subject
</td>
<td>
Date Sent
</td>
</tr>
<tr>
<?
$r = 0;
while ($r < $rows_events){
$read = mysql_result($results, $r , "read_mail");
$ID = mysql_result($results, $r , "ID");
$first_name = mysql_result($results, $r , "first_name");
$last_name = $sender_ID = mysql_result($results, $r , "last_name");
$subject = mysql_result($results, $r , "subject");
$createddate = mysql_result($results, $r , "createddate");;
echo "<tr>";
echo "<td><input type='checkbox' name='" . $ID . "'/></td>";
echo "<td>";
echo $first_name . " " . $last_name;
echo "</td>\n";
echo "<td>";
if($read == 0){
echo"<b><a href=read.php?message_ID=" . $ID . ">" .$subject . "</b></a>";
}else{
echo"<a href=read.php?message_ID=" . $ID . ">" .$subject . "</a>";
}
echo "</td>\n";
echo "<td>".$createddate ."</td>\n";
echo "</tr>\n";
$r ++;
}
?>
</tr>
</table>
<input type="submit" name="delete" value="Delete" />
</form>
<?
}else{
echo "You currently have no mail in your inbox :(";
}
如果有人能指出我对这类事情的教程方向,我将不胜感激,我已经对谷歌进行了一些调查并且发现了很多。
答案 0 :(得分:6)
您可以添加其他提交:
<input type="submit" name="delete" value="Delete" />
<input type="submit" name="mark" value="Mark it" />
在php中只检查哪一个被提交
if(isset($_POST['mark'])){
//mark stuff
}else if(isset($_POST['delete'])){
//delete stuff
}else{
//some other stuff
}
答案 1 :(得分:0)
如果您有任何选择,请查看它们是否可修改为切换到google apps.
如果这不是一个选项,请考虑安装squirrelmail
如果这不是一个选项,那么你可能想看看添加一个AJAX-ified按钮来处理你的“标记为读取”动作并在后台处理该标记。但最好的方法是使用其他人已经完全开发的东西,并且比从头开始编写自己的电子邮件界面更具弹性...