Autor | Zpráva | ||
---|---|---|---|
HomerJay Profil |
#1 · Zasláno: 21. 5. 2010, 16:24:08
Zdravím.
Dá sa cez PHP spraviť odpočet, povedzme 10 sekúnd a následne vykonať nejakú PHP akciu? Povedzme že človek príde na stránku index.php, spustí sa odpočet na 10 sekúnd a o 10 sekúnd sa vykoná akcia if(**** == true){} . Nepotrebujem aby sa ukazoval aj odpočítaný čas, teda že za sebou pôjde 5,4,3,2,1, na to by bolo treba asi JavaScript, chcem len toto. Teda človek príde na stránku a o 10 sekúnd vykoná PHP akciu. To je všetko. Vďaka. |
||
mattyZEM Profil |
#2 · Zasláno: 21. 5. 2010, 16:35:05
sleep()? Ale tady by jsi se koukal na bílou stránku.
Jedině setTimeout() + AJAX. |
||
WertriK Profil |
#3 · Zasláno: 21. 5. 2010, 16:36:51
sleep, ale tipuju, že to nebude právě to co chceš.
|
||
HomerJay Profil |
#4 · Zasláno: 21. 5. 2010, 16:43:55 · Upravil/a: HomerJay
Počkať, prečo by nešlo urobiť takto ? :
include "stranka-hore.php"; sleep(10); // FUNKCIA include "stranka-dole.php"; (stranka-hore a stranka-dole obsahujú HTML kódy čo sa nachádza na stránke pred a po scripte) EDIT: mattyZEM - AJAX? Ako ho tu využijem na vykonanie PHP scriptu? |
||
Nox Profil |
#5 · Zasláno: 21. 5. 2010, 17:12:50
jak píše mattyZEM setTimeout+ajax... ajax posílá požadavky na nějakou stránku, takže prostě pošleš požadavek na php skript.... něco si o tom přečti
|
||
HomerJay Profil |
#6 · Zasláno: 21. 5. 2010, 17:21:37
No našiel som takúto kravinku - http://www.w3schools.com/ajax/default.asp
Kód je tu: http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_first , teda: <html> <head> <script type="text/javascript"> function loadXMLDoc() { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","ajax_info.txt",true); xmlhttp.send(); } </script> </head> <body> <div id="myDiv"><h2>Let AJAX change this text</h2></div> <button type="button" onclick="loadXMLDoc()">Change Content</button> </body> </html> Z čoho som pochopil že po kliknutí na "Change Content" sa vykoná funkcia loadXMLDoc() - čo by som asi mohol využiť na načítanie PHP funkcie, avšak stále nechápem ktoré je loadXMLDoc(). |
||
mattyZEM Profil |
#7 · Zasláno: 21. 5. 2010, 17:35:11
Uprav řádek #21 na soubor který chceš otevřít.
|
||
HomerJay Profil |
#8 · Zasláno: 21. 5. 2010, 17:47:21
Ďakujem :) Takže nejako takto by to mohlo fungovať..?
include "stranka-hore.php"; <script type="text/javascript"> function loadXMLDoc() { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","mojsubor.php",true); xmlhttp.send(); } var time = setTimeout(loadXMLDoc(),10000); </script> include "stranka-dole.php"; |
||
Nox Profil |
#9 · Zasláno: 21. 5. 2010, 17:58:17
HomerJay:
zkus a uvidíš ;) |
||
HomerJay Profil |
#10 · Zasláno: 21. 5. 2010, 18:23:51
Nj, dačo také som čakal, aj tak vďaka :D
|
||
HomerJay Profil |
#11 · Zasláno: 21. 5. 2010, 18:54:40
Nuž, nefunguje. Mám to takto:
echo ' <script type="text/javascript"> function loadXMLDoc() { if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("myDiv").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","do.php?what=download&file='.$_GET['f'].'",true); xmlhttp.send(); } var time = setTimeout(loadXMLDoc(),10000); </script> S Javascriptom dáko extra neviem, takže netuším kde je chyba... |
||
mattyZEM Profil |
#12 · Zasláno: 21. 5. 2010, 19:10:37
Místo toho tvého echa by jsi to mohl celý hodit mezi ?><?php ;-)
Mimochodem, podívej se na můj profil. V druhém mém nejnovějším tématu jsem psal celý AJAX script který je fakt jednoduchý na pochopení :) až na to že tam je to přes POST a ne GET :) ale to není nic nijak moc složitého upravit :) |
||
HomerJay Profil |
#13 · Zasláno: 21. 5. 2010, 21:26:02
Tak nič, už to mám celkom inak, nebolo treba AJAX, možno som sa od začiatku zle vyjadril, neviem, ale chcel som toto :) (sťahovať nemusíte, ide o ten odpočet)
|
||
__construct Profil |
#14 · Zasláno: 21. 5. 2010, 21:32:37
Z toho názvu predpokladám, že chceš vyvolať sťahovanie súboru - zdá sa mi, že sa Ti to cez AJAX nepodarí .. ak som OT tak prepáč :)
|
||
HomerJay Profil |
#15 · Zasláno: 21. 5. 2010, 21:35:14
Nie si OT, akurát to už mám hotové, príspevok nad tebou je výsledok :D
|
||
Časová prodleva: 14 let
|
0