PHP未在Xcode模拟器中使用phoneGap执行-使用AJAX、jQuery

PHP未在Xcode模拟器中使用phoneGap执行-使用AJAX、jQuery,php,jquery,ajax,xcode,cordova,Php,Jquery,Ajax,Xcode,Cordova,我正在HTML5/Javascript/CSS3实现中创建一个应用程序。 我在本地主机上有一个外部PHP文件,正在尝试使用jQuery和AJAX与它通信。如果我在浏览器中加载该文件,并且从PHP文件中得到所需的响应,那么一切都可以正常工作。然而,当在Xcode的模拟器中运行它时,我只收到整个PHP脚本作为响应。我不知道为什么它没有执行 HTML格式: <form id="loginForm" method = "post" action="PHP/login.php"> <in

我正在HTML5/Javascript/CSS3实现中创建一个应用程序。 我在本地主机上有一个外部PHP文件,正在尝试使用jQuery和AJAX与它通信。如果我在浏览器中加载该文件,并且从PHP文件中得到所需的响应,那么一切都可以正常工作。然而,当在Xcode的模拟器中运行它时,我只收到整个PHP脚本作为响应。我不知道为什么它没有执行

HTML格式:

<form id="loginForm" method = "post" action="PHP/login.php">
<input type="text" name="username" id="username" placeholder="Username" style="width: 200px;"><br>
<input type="password" name ="password" id="password" placeholder="Password" style="width: 200px;"><br>
<button type="submit" id="login" style="float: right;">Login</button>
</form>
PHP连接到MYSQL数据库:

//connection to the database
$dbhandle = mysql_connect("localhost", "root", "************")
or die("Unable to connect to MySQL");

//select a database to work with
$selected = mysql_select_db("VLA",$dbhandle)
or die("Could not select examples");

$username = mysql_real_escape_string($_POST["username"]);
$pass = mysql_real_escape_string($_POST["password"]);

$query = "SELECT count(*) FROM users WHERE (username='$username' AND password = '$pass')";

$result = mysql_query($query);
$row = mysql_fetch_array($result);

if ($row[0] > 0){
    echo "true";
}else{
    echo "false";
    }

非常感谢您的帮助

修改php文件,将结果数据转换为json数据

 $(document).ready(function (){
    $("button#login").click(function (){
      u = $("#username").val();
      p = $("#password").val();
      if($("#username").val()==""||$("#password").val()==""){
            alert("Please enter username and password");
      }else{   
            var ajax_call = your_servicepath+'PHP/login.php';                 
            var form = $('#loginForm').serialize();                    
            $.ajax({
                type: "POST",
                url: ajax_call,
                data: form,
                dataType: "json",
                success:  function(response){
                    alert(JSON.stringify(response));
                }
            });
      }
   });
});

在我看来,您似乎将.php文件包含在iOS项目中。这将不起作用,它应该托管在服务器上。如果您意识到这一点,并尝试让模拟器与Mac上托管的.php文件通信,那么您可能应该在php url前面加上127.0.0.1Thanks。我曾尝试在服务器上引用php文件,并将项目文件夹本身也放在服务器上,但一直遇到同样的问题。这段代码在浏览器上运行得很好,但在模拟器上,我只得到返回给我的php脚本。你说的前缀是什么意思?你是说127.0.0.1/PHP/login.PHP吗?
 $(document).ready(function (){
    $("button#login").click(function (){
      u = $("#username").val();
      p = $("#password").val();
      if($("#username").val()==""||$("#password").val()==""){
            alert("Please enter username and password");
      }else{   
            var ajax_call = your_servicepath+'PHP/login.php';                 
            var form = $('#loginForm').serialize();                    
            $.ajax({
                type: "POST",
                url: ajax_call,
                data: form,
                dataType: "json",
                success:  function(response){
                    alert(JSON.stringify(response));
                }
            });
      }
   });
});