voglio mandare un link di conferma a ogni utente che si iscrive al mio sito, ma non so qual'e il codice da incorporare nel mio script
voglio mandare un link di conferma a ogni utente che si iscrive al mio sito, ma non so qual'e il codice da incorporare nel mio script
Nella tabella contenente i dati degli utenti metti i campi "token" e "attivo" (puoi dargli i nomi che ti pare in realtà).
Quando un utente effettua la registrazione generi un codice univoco (generi un codice, controlli se nel db già c'è, se già esiste ne crei un altro e così via finché non ne crei uno univoco) e lo metti nel campo "token", il campo "attivo" lo inizializzi a 0.
Alla fine dello script invii un'email con un link del tipo
www.sito.tld/conferma.php?token=il_codice_che_hai_generato
Adesso devi creare lo script conferma.php nel quale recuperi il parametro token, esegui una select sulla tabella degli utenti in cerca di tale codice, se lo trovi metti il campo "attivo" associato a 1, altrimenti non fai niente e comunichi all'utente che il codice che sta usando non è valido.
Quando un utente esegue il login, oltre a username e password leggi anche il campo "attivo" ad essi associato, se è 1 prosegui con il login, se il campo invece vale 0 non esegui il login e comunichi che l'account non è ancora stato attivato.
P.S. Qui non si fanno "i compiti per gli altri", quindi prova a fare qualcosa, scrivi del codice e se trovi difficoltà fa domande specifiche mostrando il codice che hai scritto e ti da problemi.
grazie maestro, comunque non ho capito che tipo di dato e il token, dovrei creare manualmente tutti i campi della mia tabella visto che x una strana ragione nel mio sistema linux o server lamp non riesco a usare phpmyadmin, percio dovrei fare tutto dal terminale e vorrei sapere che tipo di dato dovrebbe essere il token.
Non sono un maestro.
Il token è generalmente formato da numeri e lettere, quindi un campo varchar andrà bene, non generare codici troppo corti, falli almeno di una decina di caratteri.
Non limitare a 10, se in futuro decidessi di fare codici più lunghi e non lo potresti fare, puoi anche usare varchar(256) o altro, tanto l'occupazione di memoria sarà in base al dato che effettivamente ci metti dentro.
"bol" non è un tipo di dato in MySQL, "bool" lo è, ma è un sinonimo di TINYINT(1) quindi puoi usare direttamente questo, inoltre nella tabella utenti dovrai anche avere altri campi, come username, password, email e altri dati che possono interessarti.
si lo so fare, comunque ho un problema con il mio database, quando cerco di verificare la conessione non mi ritorna niente
non mi mostra il messaggioocodice HTML:<?php $server = "localhost"; $user= "root@localhost"; $password="admin"; $db = "test"; $conex = mysql_connect("localhost", "root", "admin") or die (mysql_error()); mysql_select_db($db, $conex) or die (mysql_error()); //$conex = mysql_connect ('localhost', 'root', "", "registro"); if($conex) {echo "conessione stabilita";} if(!$conex) { echo "error"; } else { echo nl2br ("estado".':'."conessione stabilita."\n"); } ?>
ho il server lamp sotto ubuntu
Quindi sai come recuperare il token dal link.
Hai un problema sugli apici dell'ultimo echo, dove tra l'altro fai concatenazioni che non servono essendo tutto testo.comunque ho un problema con il mio database, quando cerco di verificare la conessione non mi ritorna niente
non mi mostra il messaggioo
ho il server lamp sotto ubuntu