salve ragazzi come da titolo, ho bisogno di implementare la famosa e-mail di conferma dopo la registrazione di un utente... possiedo già uno script php , non mio , che permette la registrazione di un utente e il login... non prevede però un e-mail di conferma, quindi chiunque può registrarsi , inserendo un indirizzo e-mail qualsiasi , inesistente, quindi ho pensato all e-mail di conferma, ma non essendo un campione con il php, chiedo aiuto a voi, spero qualcuno possa guidarmi passo per passo nella risoluzione del mio problema..
inanzitutto questo è il database:
qui le funzioni che si occupano della registrazione e del login ( non metto tutti i controlli etc se no ci vorrebbero altri 2 post solo per il codice):codice:CREATE TABLE IF NOT EXISTS `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(100) NOT NULL, `pass` varchar(50) NOT NULL, `email` varchar(255) NOT NULL, `data_reg` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1
registrazione:
login:codice:/***************************** ESECUZIONE DELLA REGISTRAZIONE ******************************/ public function esegui_registrazione(){ // se il form e i suoi input sono stati inviati if(isset($_POST['register']) AND isset($_POST['username']) AND isset($_POST['email']) AND isset($_POST['pass1']) AND isset($_POST['pass2'])){ //valorizziamo alcune variabili $this->reg_username = trim($_POST['username']); $this->reg_email = trim($_POST['email']); $this->reg_pass = trim($_POST['pass1']); $this->reg_confirm_pass = trim($_POST['pass2']); // criptiamo la password $this->reg_crypt_pass = $this->crypt_pass($this->reg_pass); // eseguiamo la validazione degli input $valid_input = $this->check_input_registrazione(); // se sono validi if($valid_input===TRUE){ // inseriemo all'interno del database i dati $this->query_insert_registrazione(); // settiamo il messaggio di successo della registrazione $this->message_script = 10; return TRUE; } } return FALSE; } // esecuzione della query insert di registrazione protected function query_insert_registrazione(){ $query = " INSERT INTO users SET username='".mysql_real_escape_string($this->reg_username)."', pass='".mysql_real_escape_string($this->reg_crypt_pass)."', email='".mysql_real_escape_string($this->reg_email)."', data_reg= NOW()"; $result = mysql_query($query) or die(mysql_error()); return mysql_insert_id(); }
codice:/******************* ESECUZIONE DEL LOGIN ********************/ public function esegui_login(){ // se il form di login e i sui tutti input sono stati inviati if(isset($_POST['login']) AND isset($_POST['username']) AND isset($_POST['pass'])){ // valorizziamo delle variabili $this->login_username = trim($_POST['username']); $this->login_password = trim($_POST['pass']); // criptiamo la password $this->login_cryptpass = $this->crypt_pass($this->login_password); // validiamo i dati (non devono essere vuoti) $not_empty_input = $this->check_input_login(); // se la validazione è andata a buon fine if($not_empty_input===TRUE){ // eseguiamo la query e verifichiamo se individua le credenziali if($this->query_select_login()==TRUE){ // settiamo lo status di utente loggato $this->set_logged($this->login_iduser); // settiamo l'username $this->set_username($this->login_username); // settiamo il messaggio di successo del login $this->message_script = 12; return TRUE; } // se la query non ha trovat utenti con quelle credenziali else{ // settiamo un messaggio di insuccesso dell'operazone $this->message_script = 11; } } } return FALSE; } // esecuzione della qeury per verificare il login protected function query_select_login(){ $query = " SELECT id FROM users WHERE username='".mysql_real_escape_string($this->login_username)."' AND pass='".mysql_real_escape_string($this->login_cryptpass)."'"; $result = mysql_query($query) or die(mysql_error()); // se individua l'utente if(mysql_num_rows($result)==1){ $row = mysql_fetch_array($result); $this->login_iduser = $row['id']; return TRUE; } return FALSE; }

Rispondi quotando
...dopo che individua l utente come faccio a controllare se il valore di questo utente nella colonna attivato è 0 o 1 !?!

