Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Aiuto completamento script di registrazione

    Ciao raga, ho un problemino, non sono ancora molto bravo in php, non so che fare per inviare una mail all'indirizzo inserito da un utente nel form di registrazione per verificare se l'email è reale e procedere poi con l'inserimento del db UTENTI se ci clicca sopra. I campi inizialmente li controllo per verificarne la validità, poi mi connetto al db e se sono tutti ok mi effettua la registrazione, se l'username già esiste(è primary key) non effettua la registrazione.
    Fin qui va bene ma, ora dovrei apportare delle modifiche, prima di completare la registrazione vorrei inserire la parte dell'invio email e se l'email esiste avvisa l'utente che l'indirizzo già risulta altrimenti se non risulta procede con l'invio e quando l'utente clicca su quel link allora completa la registrazione ma non so il da farsi. Questo lo script:

    <html>
    <head><title>PROCESSO DI REGISTRAZIONE </title></head>
    <body>
    <?php
    $host='localhost';
    $user='root';
    $password='xxxxxxx';
    $database='utenti';

    $pulito=array();

    ... controlli campo nome, campo email, username e password....

    if (ctype_alpha($_POST['username']) ....... )
    {
    ....
    }
    if (ctype_alnum($_POST['password']) ........ )
    {
    .....
    }


    $connect=mysql_connect($host,$user,$password)
    or die("Impossibile connettersi al server $host");
    mysql_select_db($database,$connect)
    or die("Impossibile connettersi al database $database");
    $query="INSERT INTO utenti" ."(nome,email,username,password) " . "VALUES(
    '" .$_POST['nome']
    ."','" .$_POST['email']
    ."','" .$pulito['username']
    ."','" .md5($pulito['password'])."')";

    $verifica=mysql_query($query,$connect);


    if ($verifica==false)
    {
    print(" ATTENZIONE! IMPOSSIBILE EFFETTUARE LA REGISTRAZIONE!");
    }
    else
    {
    print("Registrazione completata!");
    print"Torna al<a href=\"login.php\"> Login </a>";
    }

    mysql_close($connect);
    ?>
    </body>
    </html>

    I campi del db UTENTI: nome, email, username(primari key), password.

    Grazie a quanti mi aiuteranno.

  2. #2
    per fare una cosa simile devi creare uno script che:

    al momento della registrazione viene inserito un account, il quale ha però un campo ( flag ) che disattiva l'utente, ( quando si effettua il login controlli che questo campo sia attivo)

    per permettere all'utente di effettuare il login devi fargli attivare il campo e questo può essere fatto mandandogli la mail di conferma di registrazione la quale contiene un link alla pagina di attivazione... in genere viene utilizzato il session id per attivare l'utente, in poche parole, quando registri l'utente nel database inserisci in un campo il suo session id. poi generi un url del tipo
    ora dovrai spedire alla sua mail questo url poi il "malcapitato" che si registra al tuo sito deve visitare la pagina la quale controlla che l'user sia disabilitato e se il codice è uguale, se è guale allora attivi l'utente..

    spero di esser stato chiaro

  3. #3
    ... ma perchè "malcapitato"?

    Sto implementando qualche frammento di codice nello script che ho inviato, un'altra domanda, lo script che ho inviato prima è il file di registrazione nel db di nome registrazione.php, ma per attivare poi l'utente cioè facendo l'UPDATE della tabella per settare il campo (o il flag) attivo da 0 a 1 devo creare una pagina a parte di nome attivazione.php giusto? E meglio farlo a parte questo file? Ma il campo flag che mi dicevi non è un campo nel db registrazione di nome ad esempio ATTIVO enum(0,1) NOT NULL default 0? ...e con l'UPDATE faccio UPDATE registro_utenti SET attivo=1 WHERE username=$username&sessione=$PHPSESSID? o è qualcos'altro?
    E per dare un certo limite di tempo all'utente per registrarsi che devo fare? Ciao e grazie.

  4. #4
    esatto è come hai descritto te, per dargli un limite di tempo puoi salvare data ed ora di registrazione che controlli quando vai a fare il check di attivazione..

  5. #5
    ok grazie , provo e ti faccio sapere...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.