jqueryダイアログでいくつかのmysqlデータを表示しようとしていますが、これは次のコードを使用しているときにうまく機能します:
クエリ:
$con = mysql_connect($host,$user,$pass);
$dbs = mysql_select_db($databaseName, $con);
//--------------------------------------------------------------------------
// 2) Query database for data
//--------------------------------------------------------------------------
$result = mysql_query("SELECT * FROM $tableName"); //query
$array = mysql_fetch_row($result); //fetch result
//--------------------------------------------------------------------------
// 3) echo result as json
//--------------------------------------------------------------------------
echo json_encode($array);
出力:
$(function ()
{
//-----------------------------------------------------------------------
// 2) Send a http request with AJAX http://api.jquery.com/jQuery.ajax/
//-----------------------------------------------------------------------
$.ajax({
url: 'api.php', //the script to call to get data
data: "", //you can insert url argumnets here to pass to api.php
//for example "id=5&parent=6"
dataType: 'json', //data format
success: function(data) //on recieve of reply
{
var URL = data[3]; //get id
var approved = data[4]; //get name
//--------------------------------------------------------------------
// 3) Update html content
//--------------------------------------------------------------------
$('#output').html("<b>URL: </b>"+URL+"<b> Status: </b>"+approved); //Set output element html
//recommend reading up on jquery selectors they are awesome
// http://api.jquery.com/category/selectors/
}
});
});
これを使用すると、結果として次のようになります。
["1","peter","test.com","yes"]
これは機能しますが、表示したいエントリが複数あるため、次のようにしています。
$result = mysql_query("SELECT * FROM $tableName WHERE username='$username'"); //query
while($array = mysql_fetch_array($result))
{echo json_encode($array);
}
次の結果が得られます。
{"0":"1","id":"1","1":"peter","username":"peter","2":"test.com","URL":"test.com","3":"yes","approved":"yes"}
{"0":"2","id":"2","1":"peter","username":"peter","2":"tessst.com","URL":"tessst.com","3":"yes","approved":"yes"}
何故ですか ?行名も取得しますか(そのようです)?
これを機能させるにはどうすればよいですか / 出力が機能するように同じ形式で取得する必要がありますか?