Permalänk
Medlem

Ajax.Updater

Hej.
Jag undrar om någon har erfarenhet av Ajax.Updater?
Jag vill att den ska uppdatera en div som ser ut enligt följande:

<div id='nowplaying' name='nowplaying'>
include ("nowplaying.php");
</div>

Ungefär var 3:e sekund.
Tacksam för svar, har sökt igenom hela världen utan resultat som JAG förstår.

Permalänk

ajax.js

if (window.XMLHttpRequest) { var req = new XMLHttpRequest() } else if (window.ActiveXObject){ var req = new ActiveXObject("Microsoft.XMLHTTP"); } var which; function retrieveURL(url, element) { req.abort(); which = document.getElementById(element); req.onreadystatechange = processStateChange; try { req.open("GET", url, true); } catch (e) { alert(e); } req.send(null); } function retrievePostURL(url, element, POSTstring) { req.abort(); if (element!='') { // innerHTML only if which is given, function enables to send POST without using return info which = document.getElementById(element); } else { which = ''; } req.onreadystatechange = processStateChange; try { req.open("POST", url, true); } catch (e) { alert(e); } req.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); req.send(POSTstring); } function processStateChange() { //alert('(processStateChange) readyState: ' + req.readyState + ' and status: ' + req.status); // dev if (req.readyState == 4) { // Complete if (req.status == 200) { // OK response if (which!='') { // innerHTML only if which is given, enables to send GET/POST without using return info which.innerHTML = req.responseText; } } else { alert("Problem: " + req.status + ' ' + req.statusText); } } } function doStuff() { var rand_no = Math.random(); retrieveURL('nowplaying.php','nowplaying'); setTimeout('doStuff()',3000); }

exempel:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> <meta name="author" content="unknown" /> <title>test</title> <script src="ajax.js" type="text/javascript"></script> </head> <body onLoad="doStuff()"> <div id='nowplaying' name='nowplaying'> include ("nowplaying.php"); </div> </body> </html>

Visa signatur

[ASUS P9X79] [Corsair RM850i] [Corsair 32GB DDR3 1600mhz] [i7 3930K] [Noctua NH-D14] [Gainward GTX 1080 "GLH" Golden Sample 8GB GDDR5X][Sandisk 256GB][Fractal Design Define S]

Permalänk
Medlem

Tack för snabbt svar.
Den uppdaterar helt klart, men resultatet blir inte det jag vill. Jag får en drös av felmeddelanden.

Warning: mysql_query() [function.mysql-query]: Access denied for user 'jensw.se'@'srv100.one.com' (using password: NO) in /customers/jensw.se/jensw.se/httpd.www/shout4/nowplaying.php on line 4

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /customers/jensw.se/jensw.se/httpd.www/shout4/nowplaying.php on line 4

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /customers/jensw.se/jensw.se/httpd.www/shout4/nowplaying.php on line 5

Permalänk
Medlem

Antar att det är Ajax.Updater från prototype.js... i så fall:

new Ajax.PeriodicalUpdater('nowplaying', 'nowplaying.php', {frequency: 3});

Permalänk
Medlem

Nu fungerar det delvis. diven som ska uppdateras ligger i index.php, och om jag ändrade i ajax.js till retrieveURL('index.php','nowplaying'); så uppdaterar den diven riktigt.
Kruxet, jag får två stycken sidor i en. DVS allting visas dubbelt..

Permalänk

Du får nog tänka om lite. Du har en div i index.php som du vill ladda in index.php i. Och du blir förvånad av att den laddas dubbelt?

Visa signatur

[ASUS P9X79] [Corsair RM850i] [Corsair 32GB DDR3 1600mhz] [i7 3930K] [Noctua NH-D14] [Gainward GTX 1080 "GLH" Golden Sample 8GB GDDR5X][Sandisk 256GB][Fractal Design Define S]

Permalänk
Medlem

Anledningen till dina felmeddelanden är att nowplaying.php inte includerar någon mysql_connect eller liknande.

Visa signatur

Besök JimNelin.com eller Jim Nelin på LinkedIn