【发布时间】:2016-02-01 08:23:13
【问题描述】:
我正在用 PHP 制作简单的邮件系统。
我用了两个表:
- 用户表
- 消息表
我使用用户表中的登录名并且也使用过会话。 使用 id 消息发送消息时正在发送。但是,当我在“mto”字段中使用他们的名字时,它会自动使用 0 id..
谁能回答我?
编写按钮代码:
<a class="btn btn-block btn-compose btn-lg" id="loginButton"><i class="fa fa-" ></i> Compose Mail </a>
<!-- The login modal. Don't display it initially -->
<form id="loginForm" method="post" class="form-horizontal" style="display: none;">
<div class="form-group">
<label class="col-xs-3 control-label">To</label>
<div class="col-xs-5">
<input type="hidden" class="form-control" name="from" />
</div>
<div class="col-xs-5">
<input type="text" class="form-control" name="to" value="<?php echo 'name' ?>"/>
</div>
</div>
<div class="form-group">
<label class="col-xs-3 control-label">Subject</label>
<div class="col-xs-5">
<input type="text" class="form-control" name="ssubject" />
</div>
</div>
<div class="form-group">
<label class="col-xs-3 control-label">Message</label>
<div class="col-xs-5">
<textarea name="smessage" class="form-control"></textarea>
</div>
</div>
<div class="form-group">
<div class="col-xs-5 col-xs-offset-3">
<button type="submit" class="btn btn-default">Send</button>
</div>
</div>
</form>
如果我们输入 id 那么它需要 id 但我想从用户名中获取名称并将 id 存储在消息表中。
请帮帮我。
<?php
include('../session.php');
$from="$session_id";
$to=mysql_real_escape_string($_POST["to"]);
$subject=mysql_real_escape_string($_POST["ssubject"]);
$message=mysql_real_escape_string($_POST["smessage"]);
if($from==$to){
echo "Message could not be sent";
die();
}
if($from>1 && $to>1){
echo "Message could not be sent";
die();
}
//echo $to.$message;
//validate before insert
if(strlen($subject)>50){
echo "Subject was too long";
die();
}
if(strlen($message)>150){
echo "Message was too long";
die();
}
include('../dbsource.php');
$mysqli=connect();
if(insert($mysqli,$from,$to,$subject,$message)>0)
{
echo "<script type=\"text/javascript\">".
"alert('Message was successfully sent');".
"</script>";
// $result='<div class="alert alert-success">Thank You! I will be in touch</div>';
}
else
{
echo "<script type=\"text/javascript\">".
"alert('there was error sending message.. please try it later');".
"</script>";
}
?>
<?php
function insert($mysqli,$from,$to,$subject,$message){
$mdate=date('Y-m-d');
$mtime=date('H:i:s');
$query = "INSERT INTO messages (mfrom,mto,subject,message,mdate,mtime)".
"VALUES ('$from','$to','$subject','$message','$mdate','$mtime')";
if($mysqli->query($query)>0)
return($mysqli->insert_id);
else
return 0;
}
?>
【问题讨论】: