ciao, ho un problema... ho impostato un semplice metodo di login che su locale funziona ma in remoto no...vi posto il codice:
codice:
<?php session_start ();
$username = $_POST['username'];
$password = sha1 ($_POST['password']);
$query = "SELECT user_id, username FROM utenti WHERE username = ('$username') AND password = ('$password')";
$result = mysql_query ($query, $conn);
$indirizzo = base64_decode ($_POST['indirizzo']);
if (!$result) { echo ("Username inesistente" . mysql_error ()); }
if (mysql_num_rows ($result) == 1 ) { $messaggio = "<h3>login effettuato</h3>";
$utentetrovato = mysql_fetch_array ($result);
$_SESSION ['user_id'] = $utentetrovato ['user_id'] ;
$_SESSION ['username'] = $utentetrovato ['username'] ;
redirect( $indirizzo , 0);
}
else { $messaggio = '<h3 class="centrato">Nome utente e/o Passord errati</h3>'; echo ($messaggio); }
?>
e non funziona...premesso che ho incluso il session_start(); all'inizio di ogni pagina e che la versione php del server è la 5.2... la sessione non funziona...o meglio... ho incluso in una pagina di prova questo codice:
codice:
<?php if(!isset($_SESSION['user_id'])){ echo('<h3>user_id non trovato</h3>');}
if(!isset($_SESSION)){ echo('<h3>sessione non avviata 2</h3>');} ?>
il primo echo è visibile mentre il secondo no... quindi significa che la sessione è avviata ma non ha registrato la variabile... però su easyphp funziona tutto ok mentre su server no...come mai? non so dove sbattere la testa...