| 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: 15 let
|
|||
0