PHP HTML5联系人表单未发送
我有一个问题,我无法确定这是我的PHP还是服务器问题 我在同一个页面上创建了一个联系人表单'contact.php',HTML&php 我反复检查了代码,没有发现任何错误。我在最终目的地没有收到任何电子邮件。有人能帮我吗?这是我的密码 这是我的电子邮件代码:PHP HTML5联系人表单未发送,php,html,forms,contact,Php,Html,Forms,Contact,我有一个问题,我无法确定这是我的PHP还是服务器问题 我在同一个页面上创建了一个联系人表单'contact.php',HTML&php 我反复检查了代码,没有发现任何错误。我在最终目的地没有收到任何电子邮件。有人能帮我吗?这是我的密码 这是我的电子邮件代码: $to='我的电子邮件地址在这里'; $subject='新联系人提交日期'; $name=$_POST['name']; $email=$_POST['email']; $message=$_POST['message']; $body=
$to='我的电子邮件地址在这里';
$subject='新联系人提交日期';
$name=$_POST['name'];
$email=$_POST['email'];
$message=$_POST['message'];
$body=我不知道它是两个单引号还是一个双引号
if($_POST){ if($name == " || $email == " || $message == ")
这是不对的吗?你是说
if($_POST){ if($name == " " || $email == " " || $message == " ")
我注意到您两次关闭了一个if语句括号,并在错误的位置关闭了另一个
您还没有为所有HTML输入添加名称
此更正的代码有效
PHP
<?php
$to = 'Your email'; $subject = 'New Contact Submission on ';
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$body = "Hi! My name is $name
My Email is $email
$message";
$header = "from: $email";
if($_POST){
if($name == '' || $email == '' || $message == ''){
$feedback = 'Please Fill all areas';
}
}else{
mail($to, $subject, $body, $header);
$feedback = 'Thank you! We will contact you soon!';
}
?>
HTML
<form action="" method="post">
<div class="col-md-12">
<div class="form-group">
<label for="name" class="sr-only" >Name</label>
<input placeholder="Name" id="name" type="text" class="form-control input-lg" name="name">
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<label for="email" class="sr-only" >Email</label>
<input placeholder="Email" id="email" type="text" class="form-control input-lg" name="email">
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<label for="message" class="sr-only" >Message</label>
<textarea placeholder="Message" id="message" class="form-control input-lg" rows="3" name="message"></textarea>
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<input type="submit" class="btn btn-primary btn-lg " action="" value="Send">
<p id="feedback"><?php echo $feedback;?></p>
</div>
</div>
</form>
名称
电子邮件
消息
请正确填写您的帖子。同时请了解如何处理表单。是的,我放弃了编辑此内容。格式化时不要使用>
字符,也不要使用##
字符。感谢Zain(Farooq)的建议编辑。-我在第三行之后放弃了,对不起,这是我在这里的第一个问题,我不知道如何正确地做。不过,感谢您的帮助。如果您在编辑模式下查看他们的代码(我可能会补充说,这完全是一团乱),您会看到他们已经声明了$name=$\u POST['name']代码>和条件之前的其他内容。另一个编辑正在等待审核…感谢您的提示,我批准了该编辑,所以我们来看看它是什么样子。干杯谢谢你编辑这个!实际上是两个单独的单引号,布拉德。它们必须是两个双引号吗?所以现在是“u”而不是“这是错误吗?谢谢你!非常感谢。我只是尝试了这个代码,它似乎工作,但是,它不会发送电子邮件到它的最终目的地,这是我需要从去。知道服务器上或这里有什么吗?谢谢大家!@Accu1我在phpfiddle.org上进行了测试,电子邮件发送到了我的电子邮件中,所以我说这是您的服务器有问题。如果你能给我一个最佳答案,我将不胜感激,因为我是新来的,需要支持,谢谢!您好,它确实可以工作,但是,我的服务器返回此错误“数据结束后来自远程邮件服务器的SMTP错误:550封邮件应该有一个或没有来自邮件头,而不是2。”有帮助吗?非常感谢。
<?php
$to = 'Your email'; $subject = 'New Contact Submission on ';
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$body = "Hi! My name is $name
My Email is $email
$message";
$header = "from: $email";
if($_POST){
if($name == '' || $email == '' || $message == ''){
$feedback = 'Please Fill all areas';
}
}else{
mail($to, $subject, $body, $header);
$feedback = 'Thank you! We will contact you soon!';
}
?>
<form action="" method="post">
<div class="col-md-12">
<div class="form-group">
<label for="name" class="sr-only" >Name</label>
<input placeholder="Name" id="name" type="text" class="form-control input-lg" name="name">
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<label for="email" class="sr-only" >Email</label>
<input placeholder="Email" id="email" type="text" class="form-control input-lg" name="email">
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<label for="message" class="sr-only" >Message</label>
<textarea placeholder="Message" id="message" class="form-control input-lg" rows="3" name="message"></textarea>
</div>
</div>
<div class="col-md-12">
<div class="form-group">
<input type="submit" class="btn btn-primary btn-lg " action="" value="Send">
<p id="feedback"><?php echo $feedback;?></p>
</div>
</div>
</form>