Visualizzazione risultati 1 fino 5 di 5

Discussione: login richiesto ad ogni pagina

  1. #1
    Guest

    Predefinito login richiesto ad ogni pagina

    Salve,
    Ho creato un piccolo form di registrazione utenti, solo che non so come fare per mantenere loggato l'utente in tutte le pagine

    Qualcuno mi può aiutare?

    Ecco l'indirizzo del form http://reg.smukamuka.com (per vedere il problema non serve che vi registriate, usate pure username: user e password: user)
    Grazie!
    Ultima modifica di NokiaN70 : 28-09-2008 alle ore 13.42.09

  2. #2
    Guest

    Predefinito

    Usa le sessioni ;)

    http://www.allwebfree.it/php_sessioni.php

    e ricordati su php.net session_start()
    Ultima modifica di comunitavirtuali : 28-09-2008 alle ore 14.05.07

  3. #3
    Guest

  4. #4
    Guest

    Predefinito

    Grazie 1000, ci do subito un occhio ;)

    EDIT: ho trovato questo codice:

    Codice PHP:
    <?
    session_start
    ();
    $_SESSION['user']=$user;
    ?>
    Solo che non so dove metterlo, se in tutte le pagine o in una o in determinate pagine...

    Metto anche il codice di verifica dell'username che potrebbe servire:
    Codice PHP:
    <?php
    $check
    = file_exists("./reg/$user.txt");
    if (
    $check==true) {
    $read = fopen("./reg/$user.txt","r");
    $read2 = fread($read,filesize("./reg/$user.txt"));
    if (
    $read2==$password) {
    echo
    'Benvenuto <strong>$user</strong><p><a href="1.php">pagina1</a> - <a href="2.php">pagina2</a> - <a href="3.php">pagina3
    </a>
    </p>'
    ;
    }
    if (
    $read2!=$password) {
    echo
    "password non valida, riprova";
    } }
    if (
    $check==false) echo 'Username non valido, se non sei ancora registrato, <a href="./reg.php">registrati</a>';
    ?>
    Ultima modifica di NokiaN70 : 28-09-2008 alle ore 16.20.14

  5. #5
    Guest

    Predefinito

    Per usare le sessioni, nel file di login devi recuperare i dati passati dal form e salvarli nella sessione. Quindi deve essere bene o male una cosa del genere:

    Codice PHP:
    <?
    //recuperi la variabile dal form
    $nome=$_POST['nome'];
    //questo serve per eliminare un'eventuale vecchia sessione
    session_start();
    session_unset();
    session_destroy();
    //inizializzi una nuova sessione
    session_start();
    //salvi nella variabile $_SESSION['nome'] il contenuto di $nome
    $_SESSION['nome']=$nome;
    ?>
    dopo di che ti conviene crearti una pagina che includerai in tutte le pagine "private" cioè chiuse ai soli registrati ad esempio controllo.php dove metterai semplicemente questo:

    Codice PHP:
    <?
    //apro la sessione
    session_start();
    //controllo che $_SESSION['nome']; non sia vuota
    if($_SESSION['nome']==''){
    //se lo è caccio l'utente mandandolo in una pagina che lo avvisa che la sessione è scaduta o che non ha fatto login
    header("Location: sessione_scaduta.php");
    }
    ?>
    Ultima modifica di Xenom89 : 29-09-2008 alle ore 14.24.50

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •