Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 要在同一页上加载的引导验证程序窗体消息_Php_Html_Twitter Bootstrap - Fatal编程技术网

Php 要在同一页上加载的引导验证程序窗体消息

Php 要在同一页上加载的引导验证程序窗体消息,php,html,twitter-bootstrap,Php,Html,Twitter Bootstrap,我一直想解决这个问题,但我找不到办法。我已经尝试过在这里找到的其他方法,但没有一种对我有效 我正在用Bootstrap建立一个网站,还使用Bootstrap验证器制作一个联系表单。我可以使它工作完美,也提交了联系方式,但“谢谢你的消息”被重定向到另一个页面。我希望“谢谢你的消息”加载到同一页上,并取代表单,因为它是一个滚动页面的网站 有人能帮我吗?这是我目前掌握的代码: 注:我所有的CSS文件都是bootstrap的原始文件,没有任何更改 HTML 福穆拉里奥·德孔塔托。 诺姆completo

我一直想解决这个问题,但我找不到办法。我已经尝试过在这里找到的其他方法,但没有一种对我有效

我正在用Bootstrap建立一个网站,还使用Bootstrap验证器制作一个联系表单。我可以使它工作完美,也提交了联系方式,但“谢谢你的消息”被重定向到另一个页面。我希望“谢谢你的消息”加载到同一页上,并取代表单,因为它是一个滚动页面的网站

有人能帮我吗?这是我目前掌握的代码: 注:我所有的CSS文件都是bootstrap的原始文件,没有任何更改

HTML


福穆拉里奥·德孔塔托。
诺姆completo
阿桑托
电子邮件
电传
男装
羡慕
林帕尔
PHP联系人

<?php

// getting 
$firstname     = $_POST['firstname'];
$lastname     = $_POST['lastname'];
$email    = trim($_POST['email']);
$emailtosend = 'myemail@hotmail.com'; //E-mail to receive message
$tel           = $_POST['tel'];
$subject          = $_POST['subject'];
$message          = $_POST['message'];


/* Message to show on email. */
$mensagemHTML = '<P>Contact form sent by the website.</P>
<p><b>First Name:</b> '.$firstname.'
<p><b>Last Name:</b> '.$lastname.'
<p><b>E-Mail:</b> '.$email.'

<p><b>Telephone:</b> '.$tel.'
<p><b>Subject:</b> '.$subject.'
<p><b>Message:</b> '.$message.'</p>
<hr>';


// 
// 
$headers = "MIME-Version: 1.1\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers .= "From: $email\r\n"; // remetente
$headers .= "Return-Path: $emailtosend \r\n"; // return-path
$envio = mail($email, $subject, $mensagemHTML, $headers); 

 if($envio)
//echo "<script>location.href='sucesso.html'</script>"; // Página que será redirecionada

?>

查看下面的代码。你需要AJAX。将其放在html页面中。 该代码的整个项目可以在中找到(以防您也希望看到其他文件)

$(函数(){
$(“#myform按钮”)。单击(函数(){
//获取表单值
变量名称=$(“输入名称”).val();
var email=$(“输入电子邮件”).val();
var comments=$(“textarea#comments”).val();
//验证并准备php的值
var dataString='name='+name+'&email='+email+'&comments='+comments;
//将数据发布到php文件
$.ajax({
类型:“POST”,
url:“bin/process form.php”,
async:false,//等待结果
数据:dataString,
成功:功能(数据){
如果(数据==“电子邮件发送成功!”){
$('#myform').html(“”);
$('#message').html(“已提交查询表!”)
.append(“我们将很快联系。

”) .hide() .fadeIn(1500,函数(){ $(“#消息”)。追加(“”); }); }否则{ $(“#我的表单错误”).show(); $('#myform errors').html(数据); } } }); 返回false; });
我尝试使用此功能,但我得到的唯一结果是在单击“提交”按钮后清理表单,页面返回顶部。但我的帐户中没有消息,也没有收到电子邮件。我仔细检查了您在链接中提供的脚本。知道了吗?您编辑了我建议的代码吗?您必须添加您的字段o它将所有的值传递给php文件。是的,我做了这些更改。这是我HTML的pastbin,就是你说要放的部分:-我还在表单顶部做了一些更改,删除了这个操作(pastbin文件中也有一个示例).contact-2.php我没有更改。您确实需要AJAX,因为您的php代码位于单独的页面中,您希望在同一页面上显示感谢信息。我建议您开始阅读AJAX,并阅读更多文章和教程,如和
<?php

// getting 
$firstname     = $_POST['firstname'];
$lastname     = $_POST['lastname'];
$email    = trim($_POST['email']);
$emailtosend = 'myemail@hotmail.com'; //E-mail to receive message
$tel           = $_POST['tel'];
$subject          = $_POST['subject'];
$message          = $_POST['message'];


/* Message to show on email. */
$mensagemHTML = '<P>Contact form sent by the website.</P>
<p><b>First Name:</b> '.$firstname.'
<p><b>Last Name:</b> '.$lastname.'
<p><b>E-Mail:</b> '.$email.'

<p><b>Telephone:</b> '.$tel.'
<p><b>Subject:</b> '.$subject.'
<p><b>Message:</b> '.$message.'</p>
<hr>';


// 
// 
$headers = "MIME-Version: 1.1\r\n";
$headers .= "Content-type: text/html; charset=utf-8\r\n";
$headers .= "From: $email\r\n"; // remetente
$headers .= "Return-Path: $emailtosend \r\n"; // return-path
$envio = mail($email, $subject, $mensagemHTML, $headers); 

 if($envio)
//echo "<script>location.href='sucesso.html'</script>"; // Página que será redirecionada

?>
    $(function() {
      $("#myform button").click(function() {

        // Get form values
        var name = $("input#name").val();
        var email = $("input#email").val();
        var comments = $("textarea#comments").val();

        // Validate and prepare values for php
        var dataString = 'name='+ name + '&email=' + email + '&comments=' + comments;

        // Post data to the php file
        $.ajax({
          type: "POST", 
          url: "bin/process-form.php",
          async:false, // Wait for the result
          data: dataString,
          success: function(data) {
              if (data=="Email Sent Successfully!"){
                $('#myform').html("<div id='message'></div>");
                $('#message').html("<h2>Enquiry Form Submitted!</h2>")
                    .append("<p>We will be in touch soon.</p>")
                    .hide()
                    .fadeIn(1500, function() {
                      $('#message').append("<span class='glyphicon glyphicon-ok'></span>");
                    });
            } else {
                    $("#myform-errors").show();
                    $('#myform-errors').html(data);
                }
          }
        });
        return false;

  });