Autor | Zpráva | ||
---|---|---|---|
zemiak Profil |
#1 · Zasláno: 4. 3. 2014, 19:50:41
čaute pomohli by ste mi neako vloižť časovač napriklad že keď ubehne 20 sekund spusti sa stranka
<?php $a = "pes"; $b = "kočka"; echo $a.' a '.$b; header("Location: https://www.facebook.com/"); ?> |
||
janbarasek Profil |
#2 · Zasláno: 4. 3. 2014, 21:59:30
zemiak:
To se na úrovni PHP nedá udělat, aspoň ne nějak "elegantně". Já bych úplně jednoduše vložil meta tag a přesměrovával přes něj: <meta http-equiv="refresh" content="20;url=http://google.com"> Nebo by to šlo udělat přes čekání a hlavičku, ale to se mi vůbec nelíbí. Příklad: <?php sleep(20); header("Location: https://google.com"); ?> |
||
jenikkozak Profil |
janbarasek:
„To se na úrovni PHP nedá udělat, aspoň ne nějak "elegantně".“ PHP je na úpravu HTTP hlaviček celkem dobré. Nejsem si jist, na jaké jiné úrovni bys to chtěl řešit „elegantněji“. HTML hlavičky bys měl nechat kodérům. <?php header("refresh:20;url=http://www.facebook.com"); |
||
zemiak Profil |
#4 · Zasláno: 5. 3. 2014, 07:45:59
už to mam ďakujem vam :))
|
||
janbarasek Profil |
#5 · Zasláno: 5. 3. 2014, 11:51:57
jenikkozak:
Elegentním řešením jsem myslel to, že nebude muset mít server 20 sekund v paměti informaci, že přesměrovává. Na některých hostinzích může najednou běžet třeba jen 5 scriptů, takže když přijde 5 návštěv, tak blokují všechny sloty. |
||
Enyeus Profil |
#6 · Zasláno: 5. 3. 2014, 12:01:35
janbarasek:
Ale hlavička se přeci pošle prohlížeči a ten si ji zpracuje. To nijak PHP nebrzdí. |
||
jenikkozak Profil |
#7 · Zasláno: 5. 3. 2014, 15:09:19
janbarasek:
Máš pravdu, že tebou navržené řešení se sleepem je nesmyslné. Pokud budeš výstup bufferovat, prohlížeč bude dvacet sekund zobrazovat prázdnou stránku a symbolizovat čekání na server. Po dvaceti sekundách dojde k přesměrování bez možnosti informovat uživatele. V případě, že buffer (s informací o tom, že má dojít k přesměrování) deaktivuješ nebo vysypeš, vyskočí po dvaceti sekundách upozornění, že data byla odeslána, a tudíž HTTP hlavičky nelze měnit. |
||
Bubák Profil |
#8 · Zasláno: 5. 3. 2014, 15:35:04
jenikkozak:
„Máš pravdu, že tebou navržené řešení se sleepem je nesmyslné.“ Ne tak úplně. Napadlo mě řešení, ale mám dojem, že funkční jen v Opeře a Firefoxu (Chrome ani IE nepodporuje) , takže z důvodu chatrné podpory v prohlížečích nepoužitelné. Stačí linkovat CSS v http hlavičce, obsah bude v content. |
||
jenikkozak Profil |
#9 · Zasláno: 5. 3. 2014, 16:17:12
Ve stínu tohoto je i přesměrování pomocí JS s předem známým časovým intervalem jeden z nejlepších nápadů.
|
||
Časová prodleva: 10 let
|
0