witam
jak napisać skrypt ofert taki jak na epuls.pl / oneliner..
Żeby się zmieniał text co 4sekundy a napis pojawiał się tylko przez 5 minut?
I rekordy się zmieniały tylko te które mogą?
<?php $then = $now + 15 * 60; $sql = sprintf('SELECT * FROM ogloszenia WHERE dataDodnia >= %d AND dataWygasnieca <= %d LIMIT 0, 40;', $now, $then); //pobieramy 40, poniewaz bedzimy co 5 sek ustawiac kolejne (5 * 40 = 200 = 3min 20sek) //i tak nikt nie zauwazy, ze po tych 3:20 leca te same od poczatku //dane wyswietlimy do JS $js = '<script type="text/javascript"> i = 0; ogloszenia = [%s];'; //za kazdym razem bedziemy tworzyc: //{uzytkownik: "XXX", data: "YYY", tresc: "ZZZ"} $rekordyJS[] = sprintf("\n\t\t{uzytkownik: \"%s\", data: \"%s\", tresc: \"%s\"}", $row['iduzytkownika'], $row['dataDodania'], $row['tresc']); //do danych z $row dodaj escape-owanie znaków } $js .= ' function abcdefZrobCos(){ var o = ogloszenia[i]; document.getElementById("oTutaj").innerHTML = o.uzytkownik + " (" + o.data + "): " + o.tresc; if(++i == ogloszenia.length){ i = 0; } } setInterval(abcdefZrobCos, 200) </script>'; ?>
<script type="text/javascript"> /*<![CDATA[*/ function startclock(){ var thetime=new Date(); var nsecn=thetime.getSeconds(); var temp=nsecn/1; switch (temp) { case 1: msg='zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz'; break; case 2: msg='aaaaaaaaaaaaaaaaaaaaa'; break; case 3: msg='bbbbbbbbbbbbbbbbbbb'; break; case 4: msg='cccccccccccccccccccccccccccc'; break; case 5: msg='ggggggggggggggggg'; break; case 6: msg='cdddddfsdfasdfasdfsadfcccccccc'; break; default: msg='jjjjjjjj'; } document.getElementById("chgText").innerHTML=msg; setTimeout('startclock()',10) } /*]]>*/ </script> <body onload="startclock();"> </body>