【发布时间】:2017-07-26 17:43:16
【问题描述】:
我在使用此代码时遇到问题。提交填写的表单后,提交按钮旁边没有显示显示消息(已发送电子邮件!)。我需要在联系表单上的提交按钮旁边显示已发送的电子邮件消息。提交表单后,即使在刷新或返回操作后,我也需要清除表单字段。请帮我解决此代码
形成动作图像:
<?php
$action=$_REQUEST['action'];
if ($action=="") /* display the contact form */
{
?>
<form name="contactform" method="post" enctype="multipart/form-data">
<input type="hidden" name="action" value="submit">
<label for="your_name">Your Name <font color="red">*</font></label>
<input type="text" id="reset" name="your_name" placeholder="Enter Your Name" maxlength="20" size="40" >
<label for="email">Email Address <font color="red">*</font></label>
<input type="email" id="reset" name="email" placeholder=" Enter Your E-mail Address" maxlength="20" size="40" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$" required>
<label for="mobile_number">Mobile Number</label>
<input type="tel" id="reset" name="mobile_number" pattern="[0-9]{1}[0-9]{9}" placeholder="Enter Your Phone Number by Adding Country Code (eg: +91.,)" maxlength="30" size="40" >
<label for="message">Message <font color="red">*</font></label>
<textarea name="message" id="reset" placeholder="Your Message Goes Here" maxlength="1000" cols="62" rows="10" required></textarea>
<input type="submit" value="Submit">
</form>
<?php
}
else /* send the submitted data */
{
$your_name = $_REQUEST['your_name'];
$email = $_REQUEST['email'];
$mobile_number = $_REQUEST['mobile_number'];
$message = $_REQUEST['message'];
$formcontent="From: $your_name \n Email: $email \n Phone Number: $mobile_number \n Message: $message";
$recipient = "name@email.com";
$subject = "Contact Form";
$mailheader = "From: $email \r\n";
if (($your_name=="")||($email=="")||($message==""))
{
echo "All fields are required, please fill <a href=\"\">the form</a> again.";
}
else{
@mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Email sent!";
}
}
?>
【问题讨论】:
-
它不会,因为您的消息在另一个
if-else分支中。 -
使用 HTML 代码在特定位置显示消息。示例 -
echo "<div><span> Message </span></div>"; -
@AshiqurRahman 这根本没有帮助。他的
echo "Email sent!";也可以,这段代码还有另一个错误。 -
@AravindDevaraj 当您提交表单时,您是否收到任何消息,或者只是一个空白页?我刚刚测试了你的代码,我得到了“错误!”消息,表示
mail()功能失败...实际上我不知道是不是因为我正在测试的服务器,不确定邮件功能是否被激活。当您尝试提交表单时,您是否收到任何邮件?如果您能告诉我们提交后究竟发生了什么,那就太好了。空白页/错误消息? -
发送消息显示,但表单字段被删除
标签: php