从phonegap android应用程序发送电子邮件

问题描述 投票:0回答:1

我想从android PhoneGap应用程序发送一个反馈表单,我使用了以下代码无法正常工作

1)我使用了下面的Ajax代码和JQuery文件来发送ajax请求和HTML表单,我想发送4个html字段的电子邮件

<script type="text/javascript" src="assets/js/jquery-3.1.1.min.js"></script>
    <script type="text/javascript" src="assets/js/jquery.js"></script>
    <script type="text/javascript" src="assets/js/geturi.js"></script>
     <script type="text/javascript">
    $(document).ready(function() {
        $("#send").click(function() {
            var fullName = $("#fullName").val();
            var emailId = $("#emailId").val();
            var mobileNo = $("#mobileNo").val();
            var message = $("#message").val();
            var dataString = "fullName=" + fullName + "&emailId=" + emailId + "&mobileNo=" + mobileNo + "&message=" + message + "&send=";
            if ($.trim(fullName).length > 0 & $.trim(emailId).length > 0 & $.trim(mobileNo).length > 0 & $.trim(message).length > 0) {
                $.ajax({
                    type: "POST",
                    url: "https://www.activebittechnologies.com/phonegap/mail.php",
                    data: dataString,
                    crossDomain: true, 
                    cache: false,
                    beforeSend: function() {
                        $("#send").val('Sending Enquiry...');
                    },
                    success: function(data) {
                        if (data == "success") {
                            alert("Mail Sent");
                            $("#send").val('submit');
                        } else if (data == "error") {
                            alert("error");
                        }
                    }
                });
            }
            return false;
        });
    });
    </script>


<div class="content form">
                        <div class="header">
                            <div class="header-overlay"></div><img src="assets/banner/5.jpg">
                            <div class="info">
                                <h3 class="title">Send Contact Enquiry</h3> 
                                <span data-close="#enquirepop" class="closeit"><i class="fa fa-times" aria-hidden="true"></i></span>
                                </div>
                        </div>

                        <div class="form-group">
                            <input id="fullName" name="fullName" type="text" class="form-control" placeholder="Full Name">
                        </div>
                        <div class="form-group">
                            <input id="emailId" name="emailId" type="text" class="form-control" placeholder="Email Id">
                        </div>
                        <div class="form-group">
                            <input id="mobileNo" name="mobileNo" type="text" class="form-control" placeholder="Mobile No">
                        </div>
                        <div class="form-group">
                            <textarea class="form-control" id="message" name="message" placeholder="Your Message" style="color:#fff;"></textarea>
                        </div>
                        <div class="text-right">
                            <input type="button" id="send" class="btn btn-primary" value="Send">
                        </div>


                    </div>

在Android手机上安装时无法从手机间隙进入此页面是服务器上的PHP脚本

<?php
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: GET, POST, PATCH, PUT, DELETE, OPTIONS");
$toEmail = "[email protected]";
$mailHeaders = "From: " . $_POST["fullName"] . "<". $_POST["emailId"] .">\r\n";
$sentml=mail($toEmail, $_POST["fullName"], $_POST["message"], $mailHeaders);

if($sentml)
echo"success";
else 
echo"error";

?>
php mysql phonegap
1个回答
0
投票

我使用$(“#form1”)。serialize()来获取表单中的所有值,并验证服务器端的值。您应该始终验证服务器端的值,因为用户可以直接向您的php发送帖子而无需任何javascript验证。

希望能帮助到你。

<script type="text/javascript" src="assets/js/jquery-3.1.1.min.js"></script>
    <script type="text/javascript" src="assets/js/jquery.js"></script>
    <script type="text/javascript" src="assets/js/geturi.js"></script>
     <script type="text/javascript">
    $(document).ready(function() {
        $("#send").click(function() {

                $.ajax({
                    type: "POST",
                    url: "https://www.activebittechnologies.com/phonegap/mail.php",
                    data: $("#form1").serialize(), 
                    crossDomain: true, 
                    cache: false,
                    beforeSend: function() {
                        $("#send").val('Sending Enquiry...');
                    },
                    success: function(data) {
                         console.log(data);
                        if (data == "success") {
                            alert("Mail Sent");
                            $("#send").val('submit');
                        } else if (data == "error") {
                            alert("error");
                        }
                    }
                });

            return false;
        });
    });
    </script>

<form id='form1' >
<div class="content form">
                        <div class="header">
                            <div class="header-overlay"></div><img src="assets/banner/5.jpg">
                            <div class="info">
                                <h3 class="title">Send Contact Enquiry</h3> 
                                <span data-close="#enquirepop" class="closeit"><i class="fa fa-times" aria-hidden="true"></i></span>
                                </div>
                        </div>

                        <div class="form-group">
                            <input id="fullName" name="fullName" type="text" class="form-control" placeholder="Full Name">
                        </div>
                        <div class="form-group">
                            <input id="emailId" name="emailId" type="text" class="form-control" placeholder="Email Id">
                        </div>
                        <div class="form-group">
                            <input id="mobileNo" name="mobileNo" type="text" class="form-control" placeholder="Mobile No">
                        </div>
                        <div class="form-group">
                            <textarea class="form-control" id="message" name="message" placeholder="Your Message" style="color:#fff;"></textarea>
                        </div>
                        <div class="text-right">
                            <input type="button" id="send" class="btn btn-primary" value="Send">
                        </div>


                    </div></form>


© www.soinside.com 2019 - 2024. All rights reserved.