Ciao a tutti, avrei un quesito trito e ritrito (lo so...) che però non riesco a risolvere da me, anche perchè guardando il forum le possibili soluzioni non funzionano... Ho un sito su aruba in cui gestisco un'area riservata tramite le sessioni. Il problema è che le sessioni mi scadono dopo una decina di minuti e questa cosa non mi va affatto bene. Per gestire le sessioni utilizzo due file php che includo alle pagine dell'area riservata.
Uno è controllo_login.php, cioè questo:
Codice PHP:
<?
ini_set("session.gc_maxlifetime", "3600");
session_start(); //..avviamo la sessione...
$username_post=mysql_escape_string($_POST['username']);
$password_post=mysql_escape_string($_POST['password']);
//
//Controlliamo se tutti i campi sono compilati
if($_POST['username']== "" || $_POST['password'] == "" )
//Se alcuni campi non sono compilati...
{
die("Alcuni campi non sono compilati"); //...terminiamo lo script e mandiamo un errore all'utente
}
//Impostiamo la query...
$query = "SELECT COUNT(*) n FROM utenti WHERE username = '$username_post' AND password='$password_post' ";
$risultato = mysql_query($query) //...e la eseguiamo
or die("Impossibile eseguire query.
".mysql_error()); //Oppure mandiamo il solito errore
$find = mysql_fetch_assoc($risultato); //Fissiamo la riga
//se non c'è un utente con quei dati quindi login errata:
if ($find['n']==0)
{
die("Username e/o password errati"); //..mandiamo l'errore e terminiamo lo script
}
else {
$HTTP_SESSION_VARS['username'] = $username_post;
$HTTP_SESSION_VARS['password'] = $password_post;
$username = $HTTP_SESSION_VARS['username'];
}
?>
ed è presente soltanto nella pagina che prende i dati dalla form principale per la login, mentre l'altro è controllo_dati.php, cioè questo:
Codice PHP:
<?php
ini_set("session.gc_maxlifetime", "3600");
session_start ();
//echo ini_get ("session.gc_maxlifetime");
if(!isset($HTTP_SESSION_VARS['username'])){
echo "Sessione non creata;";
}
$username = $HTTP_SESSION_VARS['username'];
if ($HTTP_SESSION_VARS['username']=="")
die ("Non hai i diritti per accedere a questa pagina");
?>
ed è presente come primissima cosa su ogni pagina all'interno dell'area riservata.
Ora attraverso ini_set dovrei aumentare il tempo di validità delle sessioni ad un'ora (3600 secondi = 1 ora), ma dopo una decina di minuti, invece, succede che la pagina cambia automaticamente e scrive "Sessione non creata;Non hai i diritti per accedere a questa pagina".
Qualcuno potrebbe darmi delle delucidazioni?? Thanks..
p.s.: ah, controllando le impostazioni del php.ini attraverso la funzione php_info() mi dà come valore di session.gc_maxlifetime in local value 3600 e in master value 1440 (cioè 24 minuti). Quindi dovrebbe funzionare la cosa... mah... non funziona!!! 
AIUTOOOO