【发布时间】:2014-05-28 06:12:42
【问题描述】:
我正在尝试建立自己的联系页面,但我不想使用任何插件。任何人都可以告诉我如何使用您自己的新代码或作为对我在下面提到的代码的更正。 我也试过这个http://pastebin.ca/2332012 但收到消息未发送错误
我尝试了另一种成功发送电子邮件的方法,但我可以在我的 hotmail 中收到该邮件。
这是我的代码。 提前致谢。 验证部分
<?php
if(isset($_POST['submit'])) {
if(trim($_POST['sender_name']) === '') {
$nameError = 'Please enter your name.';
$hasError = true;
} else {
$name = trim($_POST['sender_name']);
}
if(trim($_POST['sender_email']) === '') {
$emailError = 'Please enter your email address.';
$hasError = true;
} else if (!preg_match("/^[[:alnum:]][a-z0-9_.-]*@[a-z0-9.-]+\.[a-z]{2,4}$/i", trim($_POST['sender_email']))) {
$emailError = 'You entered an invalid email address.';
$hasError = true;
} else {
$email = trim($_POST['email']);
}
if(trim($_POST['message']) === '') {
$messageError = 'Please enter a message.';
$hasError = true;
} else {
if(function_exists('stripslashes')) {
$message = stripslashes(trim($_POST['message']));
} else {
$message = trim($_POST['message']);
}
}
if(trim($_POST['subject']) === '') {
$subjectError = 'Please enter a subject.';
$hasError = true;
} else {
if(function_exists('stripslashes')) {
$subject = stripslashes(trim($_POST['subject']));
} else {
$subject = trim($_POST['subject']);
}
}
if(!isset($hasError)) {
$emailTo = get_option('tz_email');
if (!isset($emailTo) || ($emailTo == '') ){
$emailTo = get_option('admin_email');
}
//$subject = '[PHP Snippets] From '.$name;
$body = "Name: $name \n\nEmail: $email \n\nMessage: $message\n\n Subject: $subject";
$headers = 'From: '.$name.' <'.$emailTo.'>' . "\r\n" . 'Reply-To: ' . $email;
wp_mail($emailTo, $subject, $body, $headers);
$emailSent = true;
}
} ?>
以上代码从 get_header() 部分开始
HTML:
<form action="<?php the_permalink(); ?>" method="post" accept-charset="utf-8" class="" id="contactForm"><div class="row">
<div class="col-md-6">
<div class="form-group">
<label for="name">Name <span class="required">*</span></label>
<input type="text" name="sender_name" value="" class="form-control" id="name" required="required" placeholder="Enter Your Name or Organization" rows="5" cols="80" />
</div>
<div class="form-group">
<label for="email">Email <span class="required">*</span></label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-envelope"></span></span>
<input type="text" name="sender_email" value="" class="form-control" id="email" required="required" placeholder="Enter Your Email id" rows="5" cols="80" /> </div><!--input g ends -->
</div>
<div class="form-group">
<p>
<label for="subject">Subject <span class="required">*</span></label>
<br /><select name="subject" class = "form-control" id="subject" required="required">
<option value="" selected="selected">Select a subject</option>
<option value="value1">General Customer Service</option>
<option value="value2">Setup a meeting for collabration</option>
<option value="value3">Product Support</option>
<option value="value4">Suggestion</option>
</select> </p>
</div>
</div>
<div class="col-md-6">
<div class="form-group">
<p>
<label for="message">Message <span class="required">*</span></label>
<textarea name="message" cols="25" rows="9" class="form-control" id="message" required="required" placeholder="Write your message" ></textarea> </p>
</div>
</div>
<div class="col-md-12">
<p>
<br/><input type="submit" name="submit" value="Submit" class="btn btn-primary pull-right" id="btnContactUs" /> </p>
</div>
</div>
<input type="hidden" name="submitted" id="submitted" value="true" />
</form>
【问题讨论】:
-
你的代码有问题吗?需要更具体地回答您的问题
-
@Andrew 我不太清楚。它给了我成功的消息,但即使在 1 小时后我也没有收到任何电子邮件。
-
@Robin 您是否遵循任何教程或创建了自己的教程?我想,有时本教程会对您有所帮助。链接:premium.wpmudev.org/blog/…
标签: javascript php html css wordpress