Javascript 联系人表单无法正常工作

Javascript 联系人表单无法正常工作,javascript,php,html,Javascript,Php,Html,我是一个程序员新手,所以我复制了一份联系表并粘贴到我的网站上。问题是它并没有发挥应有的作用。当我按下发送按钮时,它会说:“对不起,丹尼尔,我的邮件服务器似乎没有响应。请稍后再试!”。也许我以错误的方式包含php(我使用)。。。IDK 我将php粘贴到html中,因为我没有在代码段中找到php部分:D $(函数(){ $(“#contactForm输入,#contactForm文本区域”).jqBootstrapValidation({ 对,, submitError:函数($form、even

我是一个程序员新手,所以我复制了一份联系表并粘贴到我的网站上。问题是它并没有发挥应有的作用。当我按下发送按钮时,它会说:“对不起,丹尼尔,我的邮件服务器似乎没有响应。请稍后再试!”。也许我以错误的方式包含php(我使用
)。。。IDK 我将php粘贴到html中,因为我没有在代码段中找到php部分:D

$(函数(){
$(“#contactForm输入,#contactForm文本区域”).jqBootstrapValidation({
对,,
submitError:函数($form、event、errors){
//其他错误消息或事件
},
submitSuccess:函数($form,event){
//防止垃圾邮件点击和默认提交行为
$(“#btnSubmit”).attr(“禁用”,真);
event.preventDefault();
//从表单中获取值
变量名称=$(“输入名称”).val();
var email=$(“输入电子邮件”).val();
var phone=$(“输入电话”).val();
var message=$(“textarea#message”).val();
var firstName=name;//对于成功/失败消息
//检查名称中是否有空格以显示成功/失败消息
if(firstName.indexOf(“”)>=0){
firstName=name.split(“”).slice(0,-1).join(“”);
}
$.ajax({
url:“.//邮件/联系_me.php”,
类型:“POST”,
数据:{
姓名:姓名,,
电话:电话,,
电邮:电邮,,
信息:信息
},
cache:false,
成功:函数(){
//启用按钮并显示成功消息
$(“#btnSubmit”).attr(“禁用”,false);
$('#success').html(“”);
$('#success>.alert success').html(“×;”)
.附加(“”);
$(“#success>.alert success”)
.append(“您的邮件已发送。”;
$(“#success>.alert success”)
.附加(“”);
//清除所有字段
$('#contactForm')。触发器(“重置”);
},
错误:函数(){
//失败消息
$('#success').html(“”);
$('#success>.alert danger').html(“×;”)
.附加(“”);
$(“#success>.alert danger”).append(“对不起”+firstName+”,我的邮件服务器似乎没有响应。请稍后再试!”);
$(“#success>.alert danger”).append(“”);
//清除所有字段
$('#contactForm')。触发器(“重置”);
},
})
},
过滤器:函数(){
return$(this).is(“:可见”);
},
});
$(“a[数据切换=\”选项卡\“])。单击(函数(e){
e、 预防默认值();
$(此).tab(“显示”);
});
});
//单击完全隐藏失败/成功框时
$('#name')。焦点(函数(){
$('#success').html('');
});

Име

电子邮件

Телефон

Съобщение


发送
对于一个简单的联系人表单,您当前的代码似乎很复杂。我刚刚使用Bootstrap3框架为我的网站创建了一个联系人表单。我已经提供了一个JSFIDLE,其中包含您需要的代码。它包括一个简单的反垃圾邮件过滤器,因此,如果用户提供了一个错误的答案,我有一个html重定向指示用户,如果用户提供了正确的答案,它也有一个重定向,显示一个成功的html页面。您需要将PHP文件上载到服务器,以便在测试期间工作。(本文底部的PHP代码)。如果你需要帮助,尽管问。希望这有帮助:-)

-------PHP代码------


注意

别忘了换衣服:

你的电子邮件

地点:success.html

位置:failed-message.html


还包括所有相关的bootstrap 3 css文件

这是什么意思?应该是
。我试过了,但还是不行/是 啊只是询问用户的姓名、电子邮件、电话号码以及他给我的信息/反馈。我想我会自己制作一份新的联系表。:)是否可以使submit按钮不打开新页面,而是触发弹出窗口或出现div?我正在进行单页设计。:)您可以尝试这样做,这需要更多的编码:这是源代码:或者,您可以使用上面的代码,但更改html,使其看起来相同的页面,但改为带有成功面板。请确保调用PHP文件并将其保存为process.PHP。您可以将它更改为您选择的名称,但也可以在html代码中更改它,以便它们通信。此外,确保PHP文件与联系人表单中的html位于同一目录中,以便它可以调用PHP文件。如果它将代码显示为html,则意味着您需要为PHP文件提供扩展名.PHP。例如process.php。让我知道这是否有效:-)嗯,它有效…有点D当我的网站在使用apache的localhost上时,它总是“发送”电子邮件(网站说电子邮件已发送,而实际上我没有收到任何东西)。当我的网站不在apache上时,它总是说它失败了。我不知道会有什么问题:/
 <?php
   function isEmail($clientEmail) {
   return filter_var($clientEmail, FILTER_VALIDATE_EMAIL);}

 if($_POST){
  // Enter the email where you want to receive the message
   $myemail = 'your-email';
   $name = addslashes(trim($_POST['name']));
   $clientEmail = addslashes(trim($_POST['email']));
   $subject = addslashes(trim($_POST['phone']));
   $phone = addslashes(trim($_POST['phone']));
   $message = addslashes(trim($_POST['message']));
   $antispam = addslashes(trim($_POST['antispam']));
   if($antispam == '12' && isEmail($clientEmail) && $phone != '' && $message != ''   ){
    $to = $myemail;
    $email_subject = "Contact form submission: $name";
    $email_body = "You have received a new message. ".
    " Here are the details:\n Name: $name \n ".
    "Email: $clientEmail\n Message: \n $message\n Phone: $phone";
    $headers = "From: $myemail\n";
    $headers .= "Reply-To: $clientEmail";
    mail($to,$email_subject,$email_body,$headers);
    echo json_encode($array);
    header('Location: success.html'); }
    else {
    header('Location: failed-message.html'); }
  }?>