【发布时间】:2015-10-19 18:06:16
【问题描述】:
我正在尝试将 MySQL 服务器连接到我的 phonegap 应用程序。我目前有一个在 XAMPP 上运行的 localhost MySQL 和 Apache 服务器。这是我用来在服务器上调用简单 SELECT 语句的 PHP 脚本:
<?php
$host="localhost";
$port=3306;
$socket="";
$user="root";
$password="";
$dbname="mydb";
$con = new mysqli($host, $user, $password, $dbname, $port, $socket)
or die ('Could not connect to the database server' . mysqli_connect_error());
$sql = "SELECT * FROM users";
$result = $conn->query($sql);
$array = $result->fetch_row($result);
echo json_encode($array);
mysqli_close($con);
?>
接下来,我在我的 javascript 中进行了一个 jQuery JSON 调用,以获取信息并将其简单地打印在我的页面上。
$.ajax({
url: 'js/users.php',
dataType: 'json',
success: function(data){
var id = data[0];
var fName = data[1];
var lName = data[2];
$('#output').html("<b>id: </b>"+id+"<b> first name: </b>"+fname+"<b> last name: </b>"+lname);
},
error: function(data){
alert(JSON.stringify(data));
}
});
然而,每当我尝试运行此代码时,ajax 调用都会出错,并且我的浏览器会返回 Status:200 和 statusText:OK。
我非常感谢您对此事的任何帮助。谢谢!
【问题讨论】:
-
包含 ajax 调用的页面在哪里?您可能确实写了正确的路径...尝试使用完整的 url localhost:/.../.../user.php 以查看是否有效,或者尝试编写
url: <?=__DIR__?>'/js/users.php'假设您使用的是 php5.3 或更高 -
ajax 调用是在我的 javascript index.js 中进行的。我将代码更改为使用 users.php 调用的完整 url,但它仍然返回相同的错误消息。
-
包含 index.js 的 php 文件的位置在哪里。文件夹 js 是否在使用 index.js 的 php 页面的同一文件夹中
-
php文件的位置位于'localhost:8000/browser/www/js/users.php'。是的,它和我的 index.js 脚本在同一个文件夹中。
-
但是使用 index.js 的那个是在 www/ 吗?
标签: php jquery mysql json cordova