-
Password in PHP
Ho un grosso problema.
Ho una pagina (ad es. password.php) in cui è presente un form in cui inserire una password.
Quando invio i dati (ad es. alla pagina controlla_pwd.php) è presente un ciclo if che verifica se tale password è corretta. Se è corretta viene visualizzato il resto della pagina altrimenti si attiva la funzione die("Password errata!).
Se la password è corretta posso accedere ad altre pagine che si trovano dentro questa sezione protetta da password. Tuttavia se da queste pagine utilizzo un collegamento ipertestuale per tornare alla pagina controlla_pwd.php si attiva il die() perchè logicamente è come se stessi passando una password vuota. Come posso risolvere questo problema?
Spero di essere stato chiaro. :smile:
grazie in anticipo.
-
La miglior soluzione è usare i cookie.
Altrimenti in maniera rozza potresti aggiungere ai link la password....
tipo: <a href="controlla_pwd.php?psw=tuapassword">controlla _pwd.php</a>
Ciaoooooo!!!!!!
-
credo sia + funzionale con i cookie (magari a scadenza di 1 ora o poco più)
-
la cosa migliore è utilizzare $_SESSION
usa
session_start();
in tutti i file in cui vuoi fare il controllo della password. Funziona cosi'
Hai una form per richiedere la password e l'utente: giusto? bene il file che gestisce i dati (quello messo nella action) dovrà fare la seguente cosa:
<?php
session_start();
//verifica a modo tuo se la password è corretta
// se è corretta fai
$_SESSION['loggato'] = "VERO"; // anziche' mettere la password puoi usare questo campo
// se la password non è corretta fai
$_SESSION['loggato'] = "FALSO";
?>
in tutti i file che contengono informazioni riservate scrivi
<?php
session_start();
if(!isset($_SESSION) || $_SESSION['loggato']) != "VERO")
header ("index.html"); // questo comando ridirige l'utente su index.html perchè non ha il permesso
?>
Tutto qui.
Se non ti è chiaro fammi sapere
Ciao
-
Quoto in tutto demenziale, usa le variabili di sessione, con i cookie potresti avere problemi lo stesso.
Ciao!