Buonasera,
sono tre giorni che ci perdo tempo ma non sono riuscito ancora a capire perchè questa condizione funziona male:
Codice PHP:
if($a[9]){ if($conta > 0){ echo file_get_contents("protetto.flv"); }else{ echo file_get_contents("permessi_insufficienti.flv"); }}else{ echo file_get_contents("non_protetto.flv"); }
$conta è sicuramente positivo e maggiore di zero, quindi, come si può ben capire, dovrei visualizzare il file "protetto.flv" mentre vedo sempre il file "permessi_insufficienti.flv".
Se invece elimino l'header che dichiara il file flv (Header("Content-type: video/x-flv");) e modifico PHP in questo modo:
Codice PHP:
if($a[9]){ if($conta > 0){ echo "SI"; echo file_get_contents("protetto.flv"); }else{ echo file_get_contents("permessi_insufficienti.flv"); }}else{ echo file_get_contents("non_protetto.flv"); }
Visualizzo "SI" ed il contenuto di "protetto.flv". Ho pensato fosse un errore di cache così all'inizio del codice ho aggiunto:
Codice PHP:
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Data passata
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // sempre modificato
header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache"); // HTTP/1.0
Purtroppo il risultato non cambia...come mai!?