Diskuze: PHP refresh problém
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 9 zpráv z 9.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Říká se tomu PRG pattern (googli PRG pattern).
PRG = POST -> REDIRECT -> GET
Jde o to, že nevracíš z POSTu view.., ale uděláš redirect na GET po tom co uložíš do DB. Tudíž pak když refreshuješ, tak se refreshuje výsledek GET akce a ne POST akce.
Ďakujem velmi pekne !!! To už si nájdem. dik moc ešte raz
Ve zkratce.. (hádám, že nemáš žádný PHP mvc framework) na konci před dokončením práce v POSTu nastav header Location:
header("Location: ".$_SERVER['REQUEST_URI']); // pokud mas GET stejny url jako post - jinak to url bude jine
Je to skvelé funguje to ako má ale má to jednu chybičku ktorú neviem vyriešiť Ked tam dám tento header Location automaticky to v podstate refreshne a tým pádom zmizne hlášenie že sa úspečne odoslalo má toto nejaké riešenie ?
Diki moc !
Těch řešení je milion,. Třeba tempdata. Můžeš si tam před headerem uložit nějaké data a tam je pak přečíst v Getu... Php to nemá, ale jde to nasimulovat pomocí session.. Další možnost je dát si do toho Get do query parametru success flag.
Zobrazeno 9 zpráv z 9.