繁体   English   中英

PHP邮件未使用Ajax发送表单数据。 电子邮件中的数据为空

[英]PHP mail not sending form data with ajax. Data is blank in email

我正在使用Codeignitor安装中的简单注册表单。

电子邮件已发送,但是表单数据未显示在电子邮件中。 数据通过AJAX发送到欢迎文件,并命中公共函数signup()。

由于电子邮件已送达,因此没有文件数据,这很重要。

形成:

<div class="form">
                                <form ONSUBMIT="return checkRequired(this)" method="post" id="subForm">
                                    <div class="signupbox">
                                         <span class="label"><label for="FirstName">First Name:</label></span>
                                            <span><input type="text" name="firstname" id="firstName" size="25" class="required" /></span>
                                    </div>
                                    <div class="signupbox">
                                        <span class="label"><label for="LastName">Last Name:</label></span>
                                            <span><input type="text" name="lastname" id="lastName" size="25" class="required" /></span>
                                    </div>
                                    <div class="signupbox">
                                        <span class="label"><label for="email">Email:</label></span>
                                            <span><input type="text" name="email" id="email" size="25" class="required" /></span>
                                    </div>
                                    <div class="signupbox">
                                        <span class="label"><label for="Company">Company:</label></span>
                                            <span><input type="text" name="company" id="company" size="25" /></span>
                                    </div>
                                    <div class="signupbox">
                                        <span class="label"><label for="Comments">Tell us about yourself:</label></span>
                                            <span><textarea name="comments" id="comments" cols="45" rows="5" ></textarea></span>
                                    </div>
                                    <div>
                                        <span class="button"><input type="submit" value="Sign Up" id="ajaxsubmit" /></span>
                                    </div>
                                </form>
                            </div>  

signup.js:

$(document).ready(function(){

$('#ajaxsubmit').click(function(){


    var formobj = new Object();

    formobj.firstName = $('#firstName').val();
    formobj.lastName = $('#lastName').val();
    formobj.email = $('#email').val();
    formobj.company = $('#company').val();
    formobj.comments = $('#comments').val();







    //alert(JSON.stringify(formobj));


            $.ajax({
              type: 'post',
              url: 'http://www.alloi.co/signup',
              dataType: 'json',
              data: JSON.stringify(formobj) 
              });
    })


});

的welcome.php:

public function signup()
{


    $fname = $this->input->post('firstname', TRUE);
    $lname = $this->input->post('lastname', TRUE);
    $email = $this->input->post('email', TRUE);
    $company = $this->input->post('company', TRUE);
    $comments = $this->input->post('comments', TRUE);
    $headers = "MIME-Version: 1.0";
    $headers = "Content-type: text/plain; charset=iso-8859-1";
    $headers = "X-Mailer: PHP/".phpversion();

    $message = $fname." ".$lname. " has signed up for COMPANY.\n\nYou can reach ".$fname." at ".$email."\n\n".$fname." works for ".$company. "\n\n \n\n" .$comments;        

    mail("someone@email.com", 'Alloi Account Sign-up', $message, $headers);
}

电子邮件:

已注册ALLOI。

您可以到达

效劳于

我敢肯定这很简单,但我仍在学习。 我不发送表单数据在做什么呢?

预先非常感谢您,

史蒂芬

您在帖子中发送json,但尝试在服务器端以application / x-www-form-urlencoded的形式读取数据,如果要在服务器端按formobj读取数据, formobj原样传递formobj

$.ajax({
    type: 'post',
    url: 'http://www.alloi.co/signup',
    data: formobj
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM