【发布时间】:2015-07-22 14:25:14
【问题描述】:
当您使用boothstrap 填写联系我们表格时,我正在尝试发送电子邮件。我收到一封电子邮件,但它的空电子邮件已填写,没有任何信息。请帮助我在哪里出错。
这是我的 PHP。
<?
if(isset($_POST['sendemail'])) {
// EDIT THE 2 LINES BELOW AS REQUIRED
$email_to = "contact.hanif@gmail.com";
$email_subject = "General Inquery";
$name = $_POST['name'];
$email = $_POST['email'];
$subject =$_POST['subject'];
$message = $_POST['message'];
function clean_string($string) {
$bad = array("content-type","bcc:","to:","cc:","href");
return str_replace($bad,"",$string);
}
$email_message .= "First Name: ".clean_string($name)."\n";
$email_message .= "Email: ".clean_string($email_from)."\n";
$email_message .= "subject: ".clean_string($subject)."\n";
$email_message .= "message: ".clean_string($message)."\n";
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>
HTML:
<section id="contact-page">
<div class="container">
<div class="center">
<h2>Drop Your Message</h2>
<p class="lead">Please feel free to contact us if you have any query.</p>
</div>
<div class="row contact-wrap">
<div class="status alert alert-success" style="display: none"></div>
<form id="main-contact-form" class="contact-form" name="contact-form" method="post" action="sendemail.php">
<div class="col-sm-5 col-sm-offset-1">
<div class="form-group">
<label>Name *</label>
<input type="text" name="name" class="form-control" required="required">
</div>
<div class="form-group">
<label>Email *</label>
<input type="email" name="email" class="form-control" required="required">
</div>
<div class="form-group">
<label>Phone</label>
<input type="number" class="form-control">
</div>
<div class="form-group">
<label>Company Name</label>
<input type="text" class="form-control">
</div>
</div>
<div class="col-sm-5">
<div class="form-group">
<label>Subject *</label>
<input type="text" name="subject" class="form-control" required="required">
</div>
<div class="form-group">
<label>Message *</label>
<textarea name="message" id="message" required="required" class="form-control" rows="8"></textarea>
</div>
<div class="form-group">
<button type="submit" name="submit" class="btn btn-primary btn-lg" required="required">Submit Message</button>
</div>
</div>
</form>
</div><!--/.row-->
</div><!--/.container-->
</section><!--/#contact-page-->
【问题讨论】:
-
$first_name 设置在哪里?
-
看起来不像。您有 $name = $_POST['name'] 但在 clean_string() 函数中使用 $first_name 作为参数。您的所有 clean_string() 参数都没有在任何地方设置。
-
您需要包含
<form>的代码 -
$email_from 设置在哪里?
-
除了你的代码被设置了错误的变量,应该没问题。你只需要看看你的代码。
标签: php html forms twitter-bootstrap email