Autor Zpráva
SwimX
Profil
Dobrý den

mám web kde je formulář s daty a v něm iframe pro upload videa (nechtěl bych tu řešit proč, musí to tak být).
Abych zajistil alespoň základní ochranu je při otevření formuláře do sessiony uloženo ID přihlášeného uživatele.
V iframe souboru upload.php je na základě id příspěvku vytaženo z databáze id autora a porovnáno se sessionou. Pokud se schodují, je umožněn upload.

Přijdu na formulář, uploaduju video. Po 30 minutovém uploadu se reloadne stránka (jakoby se soubor přenesl) ale na podmínce
if ( $author != $_SESSION['author'] )
to spadne a zahlásí, že není splněna.

Proč?

.htaccess
php_value upload_max_filesize 2000M
php_value post_max_size 2005M
php_value memory_limit 2010M
php_value max_execution_time 10000
php_value max_input_time 10000
php_value session.gc_maxlifetime 9000

podle phpinfa je to přesně takto nastaveno.
nethor
Profil
Zkusil bych si vypsat proměnné $author a $_SESSION['author'].
Podle toho bych hledal chybu dál...
Nezapomněl jsi v iframe-souboru na session_start(); ?
SwimX
Profil
nethor:
nezapomněl, začátek projde -> zobrazí se mi uploadovací formulář.
Davex
Profil
SwimX:
na podmínce
if ( $author != $_SESSION['author'] )
to spadne a zahlásí, že není splněna.
>
Proč?
Není-li podmínka splněna, tak platí, že $author == $_SESSION['author']. To je špatně?
SwimX
Profil
Davex:
to je "špatně"
if ( $author != $_SESSION['author'] ) { echo ""; exit; }
Davex
Profil
SwimX:
V tom případě platí první část nethorovy rady [#2]. Asi není v obou proměnných stejná hodnota.


Vypiš si, zda není prázdné $_SESSION a zda zůstává stejné session_id(). Pokud to zkoušíš na webhostingu, tak se mohou sessions likvidovat nezávisle na tvém nastavení session.gc_maxlifetime v souboru .htaccess.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0