Pertama-tama saya akan sangat menyarankan untuk menggunakan objek JS untuk variabel data dalam permintaan ajax. Ini akan membuat hidup Anda jauh lebih sederhana ketika Anda akan memiliki banyak data. Misalnya:
$('h1').click(function() {
$.ajax({
type:"POST",
url: "ajax.php",
data: { "code": code },
datatype: "xml",
success: function() {
$(xml).find('site').each(function(){
//do something
});
});
});
Sedangkan untuk mendapatkan informasi dari server, pertama-tama Anda harus membuat skrip PHP untuk mengeluarkan data dari db. Jika Anda ingin mendapatkan banyak informasi dari server, maka Anda mungkin ingin membuat serialisasi data Anda dalam XML atau JSON (saya akan merekomendasikan JSON).
Dalam contoh Anda, saya akan menganggap tabel db Anda sangat kecil dan sederhana. Kolom yang tersedia adalah id, kode, dan deskripsi. Jika Anda ingin menarik semua deskripsi berita untuk kode tertentu, PHP Anda mungkin terlihat seperti ini. (Saya belum melakukan PHP dalam beberapa saat sehingga sintaks mungkin salah)
// create data-structure to handle the db info
// this will also make your code more maintainable
// since OOP is, well just a good practice
class NewsDB {
private $id = null;
var $code = null;
var $description = null;
function setID($id) {
$this->id = $id;
}
function setCode($code) {
$this->code = $code;
}
function setDescription($desc) {
$this->description = $desc;
}
}
// now you want to get all the info from the db
$data_array = array(); // will store the array of the results
$data = null; // temporary var to store info to
// make sure to make this line MUCH more secure since this can allow SQL attacks
$code = htmlspecialchars(trim($_POST['lname']));
// query
$sql = "select * from news where code=$code";
$query = mysql_query(mysql_real_escape_string($sql)) or reportSQLerror($sql);
// get the data
while ($result = mysql_fetch_assoc($query)) {
$data = new NewsDB();
$data.setID($result['id']);
$data.setCode($result['code']);
$data.setDescription($result['description']);
// append data to the array
array_push($data_array, $data);
}
// at this point you got all the data into an array
// so you can return this to the client (in ajax request)
header('Content-type: application/json');
echo json_encode($data_array);
Contoh keluaran:
[
{ "code": 5, "description": "desc of 5" },
{ "code": 6, "description": "desc of 6" },
...
]
Jadi pada tahap ini Anda akan memiliki skrip PHP yang mengembalikan data dalam JSON. Juga mari kita asumsikan url untuk skrip PHP ini adalah foo.php
.
Kemudian Anda bisa mendapatkan respons dari server dengan:
$('h1').click(function() {
$.ajax({
type:"POST",
url: "foo.php",
datatype: "json",
success: function(data, textStatus, xhr) {
data = JSON.parse(xhr.responseText);
// do something with data
for (var i = 0, len = data.length; i < len; i++) {
var code = data[i].code;
var desc = data[i].description;
// do something
}
});
});
Itu saja.