<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="it">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
<?php
include_once 'header.php';
//$testo = testo da verificare, $mi= lunghezza minima del testo, $ma= lunghezza massima
function ver_testo($testo,$mi,$ma){
    if(preg_match('/^[A-Za-z0-9]{$mi,$ma}$/', $testo)){
        //testo ok
        return TRUE;
    }else{
        return FALSE;
    }
}
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $username = trim($_POST['username']);
    $password1 = trim($_POST['password1']);
    $password2 = trim($_POST['password2']);
    $email = trim($_POST['email']);
    //metto a vuoto messagggio di errore
	$ok_ko="";
	    if(!ver_testo($username,4,10)){$ok_ko.="username non corretto deve essere lungo da 4 a 10 caratteri <br />";}
	    if(!ver_testo($password1,6,12)){$ok_ko.="prima password non corretta deve essere composta da minimo 6 massimo 12 caratteri<br />";}
	    if(!ver_testo($password2,6,12)){$ok_ko.="seconda password non corretta deve essere composta da minimo 6 massimo 12 caratteri<br />";}
	    if($password1 != $password2){$ok_ko.="le password non coincidono<br />";}
	    if(!filter_var($email, FILTER_VALIDATE_EMAIL)){$ok_ko.="Attenzione!, indirizzo email non valido<br />";}
		if($ok_ko==""){//se è rimasto vuoto non ci sono errori
		$codiceconferma = md5(uniqid(rand()));
        $username = mysql_real_escape_string(strtolower(($username)));//conviene salvarlo tutto in minuscolo
        //e ti conviene verificare che non ce ne sia un altro uguale
        $verificauseremail=mysql_query("SELECT id FROM utenti WHERE username='$username' OR email='$email'");
        if(mysql_num_rows($verificauseremail)>0){
            //avvisi e torni al form pulito
            echo "ATTENZIONE: username o email già esistente, scegline un altro.<br />";
            echo "<meta http-equiv='Refresh' content='3; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
        }else{
            $username = mysql_real_escape_string($username);
        	$email = mysql_real_escape_string($email);
			$password = mysql_real_escape_string($password1);
            $inviautentitemp = "INSERT INTO utenti_temp (codiceconferma, username, password, email) VALUES ('$codiceconferma', '$username', '$password2', '$email')";
			if(mysql_query($inviautentitemp)){
				//prepari l'email di conferma da inviare
                //anche se sarebbe meglio che tu usassi al posto di mail() la classe phpmailer
            	//Includo la classe phpmailer
            	include_once ('class.phpmailer.php');
                include_once ("class.smtp.php");
            	$mail = new PHPmailer();
            	$mail->IsSMTP();
            	$mail->isHtml(true);
                //$mail->SMTPDebug = true;
            	//Dati di collegamento al server che su aruba non servono
            	$mail->Host = "smtp.fastwebnet.it";
            	$mail->Port = 25;
            	$mail->SMTPAuth = true;
            	$mail->Username = "frigerio.alessio@fastwebnet.it";
            	$mail->Password = "Puff01974";
            	// Impostazioni invio mail al cliente
				$mail->Setfrom ("admin@sito.com","Sito");		//Inserire la mail dell'amministratore ed il nome del sito
				$mail->AddReplyTo("noreply@sito.com","Amministratore");
            	$mail->AddAddress ($email); //Mail che riceverà chi si iscrive
				$mail->MsgHTML("<html><head></head><body>Questa è una email in <b>Html</b></body></html>");
				$mail->AltBody = "Il tuo client di posta non è settato per la ricezione in HTML";
            	$mail->Subject = "Conferma di registrazione al sito www.sito.com";
            	$mail->Body = "<p>Ecco il tuo codice di attivazione</p><br />";
            	$mail->Body .= "<p>Clicca sul link per confermare la registrazione</p><br />";
            	$mail->Body .= "<a href=\"http://siti/Biblionet%20test%20MySql/register2.php?passkey=$codiceconferma\">Clicca qui</a>";
                if ($mail->Send()){
                    echo "Tra poco riceverai codice di attivazione per confermare l'iscrizione";
                }else{
                    echo "Si è verificato un errore di trasmissione riprova più tardi";
                	//e dopo 3 secondi torno automaticamente al form ripulito
                	echo "<meta http-equiv='Refresh' content='3; URL=".htmlspecialchars($_SERVER['PHP_SELF'])."'>";
                	//i secondi di attesa possono essere aumentati o diminuiti
           		}
		} else {
			echo "ERRORE di comnnesione, ti preghiamo di riprovare più tardi<br />";
			echo "<meta http-equiv='Refresh' content='3; URL=index.php'>";
		}
    }
}
}
?>
                <form method="post" id="formregistrazione" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>">
                    <table class="pinco_pallo">
                        <tr>
                            <td><label for="username">Username</label></td>
                            <td><input type="text" name="username" id="username" /></td>
                        </tr>
                        <tr>
                            <td><label for="password1">Password</label></td>
                            <td><input type="password" name="password1" id="password1" /></td>
                        </tr>
                        <tr>
                            <td><label for="password2">Ripeti Password</label></td>
                            <td><input type="password" name="password2" id="password2" /></td>
                        </tr>
                        <tr>
                            <td><label for="email">Email</label></td>
                            <td><input type="text" name="email" id="email" /></td>
                        </tr>
                        <tr>
                            <td> </td><td><input type="submit" name="invia" id="registrati" value="Registrati" /></td>
                        </tr>
                        <tr>
                            <!--qui ci sta bene un link in modo che l'utente possa uscire senza registrarsi -->
                            <td> </td><td><a href="index.php">esci</a></td>
                        </tr>
                    </table>
                </form>