Eğer bir JavaScript çerçevesini kullanarak, kendinizi AJAX tüm inceliklerini öğrenmek zorunda zaman kazanmak istiyorsanız iyi bir kısayol (bunlar genel olarak büyük bir zaman tasarrufu demektir) olduğunu. YUI gibi bir şey kullanarak, kod sadece birkaç satır ile uygulama içine AJAX işlevselliği inşa edebilirsiniz.
Özellikle, YUI Connection Manager Component kullanmak isteyeceksiniz. YUI mükemmel belgelerine sahiptir, bu nedenle kendinizi anlamaya zor olmamalı. Değilse, here's a short tutorial başlayanlar için.
HTML ön ucu içeride böyle bir şey olmalı:
<!-- YUI source files -->
<script src="http://yui.yahooapis.com/2.7.0/build/yahoo/yahoo-min.js"></script>
<script src="http://yui.yahooapis.com/2.7.0/build/event/event-min.js"></script>
<script src="http://yui.yahooapis.com/2.7.0/build/connection/connection-min.js"></script>
<script>
var tiles = new Array();
function refreshTable() {
var sUrl = "ajax/table.php";
var responseSuccess = function(o) {
var root = o.responseXML.documentElement;
var rows = root.getElementsByTagName('row');
for (i=0; i<rows.length; i++) {
tiles[i] = new Array();
for (j=0; j<rows[i].childNodes.length; j++) {
tiles[i][j] = rows[i].childNodes[j].firstChild.nodeValue;
}
}
/*
Update your table using the tiles[][] 2D array.
/*
}
var responseFailure = function(o) {
// Failure handler
alert(o.statusText);
}
var callback = {
success:responseSuccess,
failure:responseFailure,
timeout:3000
}
var transaction = YAHOO.util.Connect.asyncRequest('GET', sUrl, callback, null);
}
setInterval(refreshTable(),2000);
</script>
PHP arka uç içine, sen gibi bir şey biçiminde XML verilerini oluşturmak gerekiyor:
<table>
<row>
<tile>dirt</tile>
<tile>water</tile>
<tile>water</tile>
<tile>dirt</tile>
<tile>dirt</tile>
</row>
<row>
<tile>dirt</tile>
<tile>dirt</tile>
<tile>water</tile>
<tile>water</tile>
<tile>dirt</tile>
</row>
<row>
<tile>dirt</tile>
<tile>dirt</tile>
<tile>water</tile>
<tile>water</tile>
<tile>dirt</tile>
</row>
<row>
<tile>dirt</tile>
<tile>dirt</tile>
<tile>dirt</tile>
<tile>water</tile>
<tile>water</tile>
</row>
<row>
<tile>dirt</tile>
<tile>dirt</tile>
<tile>dirt</tile>
<tile>dirt</tile>
<tile>water</tile>
</row>
</table>
Ve bu onun özü budur. Eğer sunucu tarafı komut dosyası PHP argüman geçmek gerekiyorsa, sadece encodeURI() kullanarak URL üzerine ekledim ve $_GET[] superglobal kullanarak erişebilirsiniz.