Autor | Zpráva | ||
---|---|---|---|
ghost Profil |
#1 · Zasláno: 12. 7. 2011, 03:03:15
Dobrý den, prosím poraďte mi, jak vytvořit na stránce dynamickou zmenu obrazku , ktere vyhovuji nejakemu kriteriu (cili pouzit SQL DB).A menit je treba po 1 minute (to uz bych zvladnul :) ) nacist si vsechny jejich nazvy predem bohuzel nemuzu, protoze jich je kolem 20 000.
|
||
Neas Profil |
#2 · Zasláno: 12. 7. 2011, 04:42:04 · Upravil/a: Neas
v javascriptu si nastavíš setInterval a v minutovém intervalu budeš odesílat ajax požadavek na php script, který vybere právě jeden obrázek z db a odešle výsledek zpátky na stránku.
(některé frameworky, jako například jQuery již ajaxové funkce obsahují a jejich obsluha je mnohem jednodušší, avšak je trochu zbytečné importovat celou knihovnu jenom kvůli ajaxu) doufám, že jsem správně pochopil tvůj problém |
||
ghost Profil |
#3 · Zasláno: 12. 7. 2011, 04:50:02
Asi ano , dik za help. Ajaxu se trochu bojim protoze sem v nem nikdy nic nedelal, ale co uz vsechno musi byt jednou poprvy :) dik
|
||
ghost Profil |
#4 · Zasláno: 12. 7. 2011, 06:31:19
tak, hledal jsem a nasel priklad. ten jsem upravil podle sebe a ejhle jede to, ale s jedno vyjimkou a to IE :) firefox i opera v poradku. Mohl bych se zeptat v cem to muze byt ?
<script> function ajax(stranka, kam) { var httpRequest; if(typeof window.ActiveXObject != 'undefined') { httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); } else { httpRequest = new XMLHttpRequest(); } httpRequest.open("GET", stranka, true); httpRequest.onreadystatechange= function () { processRequest(httpRequest, kam) }; httpRequest.send(null); } function processRequest(httpRequest, kam) { if (httpRequest.readyState == 4) { if (( httpRequest.status >= 200 && httpRequest.status < 300 ) || httpRequest.status == 304) { if (typeof kam == 'string') { document.getElementById(kam).innerHTML = httpRequest.responseText; } if (typeof kam == 'function') { kam(httpRequest.responseText); } } else { alert("Chyba pri nacitani stanky " + httpRequest.status +" : "+ httpRequest.statusText); } } else { if (typeof kam == 'string' && kam != '') { document.getElementById(kam).innerHTML = ''; } } } setInterval("ajax('soubor.php','contentViewer');", 3000) </script> <div id="contentViewer"> </div> chovani je takove : v souboru php je kod ktery vykresluje 9 obrazku (random) takze vzdy kdyz se spusti by mel vykreslit novych 9. v lisce i opere to funguje a obrazky se vesele meni. v IE se vykresli jen prvnich 9 a pak se sice "jakoby nacitaji znova" ale zustanou ty stejne . v souboru.php chyba nebude, protoze pokud ho dam do prohlizece IE samotny a refreshuji, tak se obr. meni. |
||
ghost Profil |
#5 · Zasláno: 12. 7. 2011, 07:39:02
Edit : vyřešeno. nepouzival jsem rozhrani prave pro IE :)
|
||
Časová prodleva: 13 let
|
0