Codice PHP:
<?
//include header.php
include('../regist/header.php');
//collegamento dal database
require_once('../regist/config.php');
//controlla se l'utente è già loggato
if($_SESSION['logged_in'] == 1)
{
//reindirizzamento alla home page : edita il parametro con il tuo indirizzo
header('Location: [url]http://www.................[/url]');
}
//l'utente non è loggato
else {
//il modulo non è stato ancora inviato
if(isset($HTTP_POST_VARS['submit']))
{
//controlla dati relativi all'username
if(!$_POST['username']) die('Attenzione : il campo username è vuoto');
//array di caratteri non ammessi
$bad = array('.' , ',' , '/' , '`' , ';' , '[' , ']' , '-',
'*', '&', '^', '%', '$', '#', '@', '!', '~', '+', '(', ')',
'|', '{', '}', '<', '>', '?', ':', '"', '=');
//controlla lunghezza username
$len = strlen($_POST['username']);
//sostituisce caratteri non ammessi
$_POST['username'] = str_replace($bad, '', $_POST['username']);
$dato = $_POST['username'];
//se le lunghezze sono differenti sono stati utilizzati caratteri non ammessi
if(strlen($dato) != $len) {
die('Hai usato dei caratteri non validi nel campo username. Puoi usare solo lettere, numeri e il trattino basso _ !!');
}
//Controlla se l'username è già utlizzato nel database...
$q2 = mysql_query("SELECT * FROM `utenti` WHERE `username` = '".$_POST['username']."'");
$q3 = mysql_fetch_object($q2);
if($q3->username == $_POST['username']) {
die('Siamo spiacenti ma l\'username "'.$q3->username.'" è già attivo nel nostro database
Per favore ne scelga un altro.');
}
//controlla dati relativi alla password
if(!$_POST['password']) {
die('Errore: Il campo password risulta non compilato');
}
if(!$_POST['verify_password']) {
die('Errore: Il campo verfica password risulta non compilato');
}
if($_POST['password'] != $_POST['verify_password']) {
die('Errore: Le passwords non corrispondono.');
}
//Inserisce il nuovo membro nel database
$insert ="INSERT INTO `utenti` (username, user_password, user_email) VALUES ('".$_POST['username']."',
'".md5($_POST['password'])."', '".$_POST['email']."')";
$insert2 = mysql_query($insert);
if(!$insert2) die(mysql_error());
//Edita i parametri sottostanti con i dati relativi al tuo sito
$web_site = 'www...................';
$webmaster = 'Martina';
$web_mail = 'info@.................com';
// Fine modifica
//Passa i dati per il login a variabili da mandare via mail all'utente
$nome_utente = $_POST['username'];
$pass_utente = $_POST['password'];
$mail_utente = $_POST['email'];
$header = "From: ". $web_site . " <" . $web_mail . ">\r\n";
// Edita l'oggetto e il messaggio
$subject = "Dettagli registrazione";
$message = "Gentile $nome_utente, questi sono i dati per il login $web_site.
Clicca il link sopra e inserisci nome e passowrd per entrate.
Username: $nome_utente
Password: $pass_utente
Conserva queste informazioni o meglio ancora stampa questa mail.
Grazie infinite,
$webmaster";
// Spedisce la mail
mail($mail_utente, $subject, $message, $header);
echo('Registrazione avvenuta, Benvenuto !!!
Le informazioni che ci hai fornito ti sono state spedite via mail.');
}
//il modulo non è stato ancora compilato
else {
?>
<form action="<? $_SERVER['PHP_SELF']; ?>" method="post" name="signup" id="signup">
<fieldset>
<div align="center">
<legend>Compila il modulo per registrare gli utenti </legend>
</div>
<legend><label for="username">
</label></legend>
<dl><dt><label for="username"><div align="right"></div>
</label>
<div align="right">Username : (sono permessi solo lettere e numeri)
<input type="text" id ="username" name="username" value="" maxlength="30" />
</div>
</dt>
</dl>
<dl>
<dt>
<label for="password">
<div align="right"></div>
</label>
<div align="right">Password : (minimo 6 caratteri)
<input type="password" id="password" name="password" value="" maxlength="30" />
</div>
</dt>
</dl>
<dl>
<dt>
<label for="verify_password">
<div align="right">
<div align="right">
<div align="right"></div>
Verifica Password :
<input type="password" id="verify_password" name="verify_password" value="" maxlength="30" />
</div>
</div>
</label>
</dt>
</dl>
<dl>
<dt>
<label for="email">
<div align="right"></div>
</label>
<div align="right">Email :
<input type="text" id="email" name="email" value="" size="30" />
</div>
</dt>
</dl>
</fieldset>
<fieldset>
<div align="right">
<input type="submit" id="submit" name="submit" value="Invia" />
</div>
</fieldset>
</form>
<?
} //fine utente non loggato
} //fine modulo non inviato
?>
</td>
</tr>
</table>