Ciao a tutti ragazzi...
avrei bisogno di un aiutino.
Sto creando un sito in cui sia possibile controllare l'accesso ad alcune pagine attraverso un log-in.
Ora, nelle pagine interessate, per verificare che la sessione di login sia effettivamente stata registrata attraverso il form di login e, nel caso in cui non lo sia stato, per mostrare un messaggio di errore all'utente mi baso sul php if():
Il fatto è che il mio browser mi restituisce errore. E precisamente l'errore è questo:
Parse error: syntax error, unexpected $end in /data/members/free/tripod/it/s/i/m/simonebolognini/htdocs/login_success.php on line 237
Capisco dunque che il browser non è d'accordo con il mio endif; a fine pagina.
Ma come mai?
Vi posto il codice, così se avete tempo magari potete darmi una manina.
Codice PHP:
<?php
session_start();
$username = $_GET['user'];
//ho passato l'username criptato attraverso md5 per query
?>
<?php if(session_is_registered(username) and $username == md5('user')): ?>
//qui controllo se il nome utente passato tramite query è quelo dell'amministratore, e se lo è stampo
video un certo tipo di informazioni
<html>Informazioni per l'amministratore</html>
<?php if(session_is_registered(username) and $username != md5('user')): ?>
//adesso controllo che l'utente logginato sia un utente generico, in quanto diverso
dall'amministratore
//è questo il passaggio su cui non sono sicuro...
<html>informazioni</html>
<?php else:
header('location:login.html');
endif;
?>
//ultimo passaggio. Esclusa la possibilità che sia registrata una sessione,
rispedisco direttamente l'utente alla pagina di login e chiudo l'if().
Voi che dite?
Grazie in anticipo!!