<html><head>
<title>clubsound - AJAX: reload div</title>
<script type="text/javascript">
/*** Ändern ***/
var seks = 10; // Anzahl Sekunden bis zum reload
function init() {
document.getElementById("counter").firstChild.nodeValue = "Reload alle " + seks + " Sekunden.";
setInterval("ajax_start()",seks * 1000);
setInterval("frame_start()",seks * 1000);
}
/********** Lösung mit AJAX ************/
/*** Ändern ***/
var doc = "http://localhost/Tests/ajax_file.php";
// (abs.) Pfad zur PHP-Datei
/**********************************/
/*** Ab hier nichts mehr ändern ***/
var req; // XML-Antwort-Objekt
var queryResult; // Zeiger auf Ergebnis
function loadXMLDoc(url) // Aufrufende Funktion
{
// branch for native XMLHttpRequest object
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
req.onreadystatechange = processReqChange;
req.open("GET", url, true);
req.send(null);
// branch for IE/Windows ActiveX version
} else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {
req.onreadystatechange = processReqChange;
req.open("GET", url, true);
req.send();
}
}
}
function processReqChange() // Funktion verarbeitet Daten
{
// only if req shows "complete"
if (req.readyState == 4) {
// only if "OK"
if (req.status == 200) {
var response = req.responseXML.documentElement;
response = response.getElementsByTagName('result')[0].firstChild.nodeValue;
document.getElementById("ajax_div").firstChild.firstChild.nodeValue = response;
} else {
alert("Ein Fehler ist aufgetreten. (Lesen von XML-Dokument)");
return false;
}
}
}
function ajax_start() // Init-Funktion
{
loadXMLDoc(doc);
}
/********** Lösung mit Frames **********/
function frame_start() // Init-Funktion
{
document.getElementById("frames_div").getElementsByTagName("iframe")[0].src = "frame_file.php";
}
</script>
</head>
<body>
<h1>Reload einer PHP-Datei in ein DIV???</h1>
<h2>Zwei Möglichkeiten:</h2>
<ul>
<li>Mit <a href="http://de.wikipedia.org/wiki/AJAX">AJAX</a></li>
<li>Mit <a href="http://google.de?q=frames+selfhtml">Frames</a></li>
</ul>
<p>Dargestellt wird in beiden Fällen ein PHP-File, welche Server-zeit
und IP ausgibt.</p>
<a href="#" onClick="init()">START</a><p id="counter"> </p>
<h3>Mit AJAX</h3>
<div id="ajax_div"><p>Hier das Div.</p></div>
<h3>Mit Frames</h3>
<div id="frames_div"><iframe></iframe></div>
</body>
</html>