我是新來的編程人員,現在正在嘗試使用PHP和MySQL的iOS應用程序Titanium mobile。如何發送和接收多維數組從PHP到鈦移動?
問題是,當我從DB獲得一些數組數據並嘗試傳遞給Titanium時,「this.responseText」包含「null」。
這裏是一部分,
loadReq.onload = function()
{
var json = this.responseText;
var response = [];
response = JSON.parse(json);
Ti.API.info(response);
};
loadReq.onerror = function(event)
{
alert("Network error");
Ti.API.debug(event);
Ti.API.info(event);
};
loadReq.open("POST","http://localhost/myAppName/post_loading.php");
var params = {
userid: win.userid
};
loadReq.send(params);
,這裏是我的PHP代碼。
<?php
$con = mysql_connect('localhost','root','root');
if (!$con)
{
echo "Failed to connect.";
exit;
}
$db = mysql_select_db('myAppName');
if (!$db)
{
echo "Failed at selecting db.";
exit;
}
$userid = $_POST['userid'];
$sql = "here is sql order which will fetch array data based on $userid";
$query = mysql_query($sql);
$response = array();
if (mysql_num_rows($query) > 0)
{
$row = mysql_fetch_array($query);
$response = $row;
echo json_encode($response);
}
else
{
echo "there is no such data";
}
?>
陣列數據的PHP文件的從數據庫得到的是這樣的,
Array(
[0] => Array(
'id' => '1',
'name' => 'name1',
'sex' => 'm',
'age' => '20'
),
[1] => Array(
'id' => '3',
'name' => 'name3',
'sex' => 'f',
'age' => '25'
),
[2] => Array(
'id' => '5',
'name' => 'name5',
'sex' => 'm',
'age' => '18'
)
)
我測試了一些情況,以確保HttpClient的工作時,SQL命令是在語法正確,單數據(不是多維的,而只是一個數組,值和單詞)能夠正確傳遞。但是,此時多維數組並不可用。 Ti.API.info只是告訴我的答案是「空」
任何建議?
在此先感謝。
對不起,不知道這是解決方案,但它不會傷害到它添加它可以解決你的問題 – Apotropaic
我加了但仍然迴應null。謝謝你的建議無論如何:) – user1258134