POST适用于localhost但不适用于实时服务器

时间:2017-03-22 09:14:25

标签: php jquery ajax

在这个论坛上提出了很多类似的问题,但我们面临的问题似乎都没有。我是Jquery和JQM的新手。我最近使用带有后端php的jquery mobile构建了一个phonegap混合应用程序。

我在本地主机上创建了一个移动号码注册页面,在该页面上捕获数据并通过后端php成功插入数据库。

现在的问题是,在实时服务器上尝试相同时,我收到的消息与我在localhost上使用的代码相同。我无法理解失踪的是什么。请求查看下面提到的代码并提出遗漏的内容。

//Jquery Mobile form HTML Code:
<div data-role="page" id="signup" data-theme="a">
    <div data-role="header">
        <h1>SIGN-UP</h1>
        <a href="menu" data-icon="grid">Menu</a>
    </div>
    <div data-role="content">
        <div>
            <form method="post" action="#">
                <input type="text" placeholder="Enter Mobile Number" data-role="text" id="otpmobilo">
                <input type="button" value="Get Code" id="otpsubmits">
            </form>
        </div>
    </div>
    <div data-role="footer" data-position="fixed" data-theme="b">
        <h6>&copy; Footer Details</h6>
    </div>
</div>

//Jquery Code:
$("#otpsubmits").click(function () {
    var mobile = $("#otpmobilo").val();
    var dataString = "phone=" + mobile;
    $.ajax({
        type: "POST",
        url: "php-code2/rand2.php",
        data: dataString,
        success: function (response) {
            if (response == "success") {
                alert("Success!!!");
                //displayOtp();
            } else if (response == "failed") {
                alert("Failed");
            }
        }
    });
});

//PHP Code:
<?php
header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: GET, POST");
include'db.php';
if(isset($_POST['phone']))
{
$mobile=$_POST['phone'];
$digits = 4;
$rand = rand(pow(10, $digits-1), pow(10, $digits)-1);
$otp = mysqli_query($con,"INSERT INTO `users`(`mobile`,`verifyCode`) VALUES ($mobile,$rand)");
if($otp){
echo "success";
}else{
echo "failed";
}
}
?>

但是当我尝试从db显示数据时,我能够通过get方法提取数据,并能够根据页面上的需要显示数据。似乎问题是json ajax中的post方法,我不确定。需要您帮助解决此问题。

0 个答案:

没有答案