Autor | Zpráva | ||
---|---|---|---|
Honza Hučín Profil |
#1 · Zasláno: 6. 11. 2006, 14:14:07
Superglobální pole $_POST obsahuje data zaslaná skriptu metodou POST, např. z formulářů. Lze ale v obslužném skriptu hodnotu pole $_POST měnit či přidávat další položky pole?
V manuálu se o tom nic nepíše, z čehož usuzuju, že to zakázané asi není. Ale nemůže to způsobit nějaký problém? Není to teoretický dotaz, má to (aspoň pro mě) praktický význam. |
||
Hugo Profil |
#2 · Zasláno: 6. 11. 2006, 14:18:44
Honza Hučín
Pole $_POST je stejné, jako jakékoliv jiné pole, takže s ním můžeš dělat co chceš. |
||
mila Profil |
#3 · Zasláno: 6. 11. 2006, 14:52:51
Měnit určutě jde (stačí vyzkoušet) ale nepřijde mi to jako příliš dobrý nápad. Použil bych to pouze nízkoúrovňově, pokud mi všeobecně nevyhovuje, co v $_POST je. Například pokud nemůžu změnit nastavení magic quotes.
Jinak mi přijde dobrý zvyk do jednotlivých fcí předávat parametry a ne v nich přímo tahat data z $_POST, natož je upravovat. Používání globálních proměných je zpravidla špatně, a že jde $_POST na tom nic nemění... |
||
Honza Hučín Profil |
#4 · Zasláno: 6. 11. 2006, 15:16:51
Díky. Podle všeho to opravdu jde. Teď vysvětlím účel, proč jsem se ptal.
Mám funkční aplikaci, která zpracovává data z nějakého formuláře. Na to zpracování mám třídu, která načte data z $_POST, ošetří magic_quotes, data podle potřeby oslashuje atd. atd. Aplikace využívá sessions. Tedy se může stát, že přihlášenému uživateli vyprší platnost přihlášení, než odešle data z formuláře (i když časový limit je dostatečný). Protože chci být na něho hodný i v takovém případě, chci odeslaná data z $_POST někde uschovat ($_SESSION, databáze), dotyčného nechat znovu přihlásit a pak mu data vrátit a rovnou zpracovat. Chci využít existující třídu, takže se mi hodí uschovaná data načíst zpátky do $_POST a pak nechat zpracovat běžným způsobem. |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0