Bonsoirs,
Voici un script d'inscription cataclysme.
Page config.php:
Page inscription.php:
Voici un script d'inscription cataclysme.
Page config.php:
Code:
<?php
$host = 'localhost';
$user = 'root';
$pass = '';
$connexion = mysql_connect($host ,$user ,$pass) or die(mysql_error());
$realmd = 'realmd';
?>
Page inscription.php:
Code:
<?php
session_start();
error_reporting(0);
include('config.php');
switch ($_GET['action'])
{
case "":
echo'
<h1>Inscription</h1>
<form method="post" action="inscription.php?action=valide">
<p>';
$nb1 = rand(3, 10);
$nb2 = rand(3, 10);
$result = $nb1 + $nb2;
echo'
Votre inscription sera effective dès que vous aurez rempli ce formulaire :<br />
<br />
Nom de compte : <input type="text" name="username"/><br />
Adresse email : <input type="text" name="email"/><br />
Mot de passe : <input type="password" name="password"/><br />
Repetez le mot de passe : <input type="password" name="passwordrepeat"/><br />
Extension :
<select name="extension">
<option value="3">Cataclysme</option>
<option value="2"><font color="#006666">Wrath of the Lich King</font></option>
<option value="1">Burning Crusade</option>
<option value="0">World of Warcraft</option>
</select>
<br />
'.$nb1.' + '.$nb2.' = <input type="text" name="captcha" /><br />
<br />
<input type=hidden name=result value='.$result.'>
<input type="submit" name="ok" value="Envoyer" /><br /><br />
Version '.$version.'<br />'.$realmlist.'
</p>
</form>';
break;
case "valide":
$date = date('Y-m-d H:i:s');
$username = $_POST['username'];
$cuser = strlen($username);
$email = $_POST['email'];
$password = $_POST['password'];
$expansion = $_POST['extension'];
$passrep = $_POST['passwordrepeat'];
$captcha = $_POST['captcha'];
$resultat = $_POST['result'];
$cpass = strlen($password);
if (preg_match('#INSERT|SELECT|UNION|FROM|WHERE|DELETE#', $username) OR preg_match('#INSERT|SELECT|UNION|FROM|WHERE|DELETE#', $email) OR preg_match('#INSERT|SELECT|UNION|FROM|WHERE|DELETE#', $password) OR preg_match('#INSERT|SELECT|UNION|FROM|WHERE|DELETE#', $captcha) OR preg_match('#INSERT|SELECT|UNION|FROM|WHERE|DELETE#', $passrep))
{
echo 'Injection SQL detectee.<br /><a href=inscription.php>Reessayer</a>';
}
else {
if (empty($username) OR empty($captcha) OR empty($email))
{
echo '- Tous les champs ne sont pas remplis.<br /><a href=inscription.php>Reessayer</a>';
$remp = 0;
}
else {
$remp = 1;
// PARTIE NOM DE COMPTE
if ($cuser < 3)
{
echo '- Le nom d\'utilisateur choisi est trop court.<br /><a href=inscription.php>Reessayer</a>';
$userlok = 0;
}
else
{
$cuserok = 1;
mysql_select_db($realmd,$connexion) or die(mysql_error());
$cacc=mysql_query('SELECT COUNT(*) AS numberacc FROM account WHERE username=\'' .$username.'\'') or die ("Erreur requette SQL");
$countacc = mysql_fetch_assoc($cacc);
if ($countacc['numberacc'] == 1)
{
echo '- Le nom d\'utilisateur est déjâ pris.<br /><a href=inscription.php>Reessayer</a>';
$coacc = 0;
}
else {
$coacc = 1;
// PARTIE ADRESSE EMAIL
$mail=mysql_query('SELECT COUNT(*) AS numbermail FROM account WHERE email=\'' . $email.'\'') or die ("Erreur requette SQL");
$datam = mysql_fetch_assoc($mail);
if ($datam['numbermail'] >=1)
{
echo '- L\'email est déjâ utilisée.<br /><a href=inscription.php>Reessayer</a>';
$emailco = 0;
}
else
{
$emailco = 1;
if(!preg_match('#^[a-z0-9.-_]+@[a-z0-9.-_]{2,}\.[a-z]{2,4}$#', $email))
{
echo '- L\'email est incorrect.<br /><a href=inscription.php>Reessayer</a>';
$emailch = 0;
}
else
{
$emailch = 1;
// PARTIE MOT DE PASSE
if ($cpass < 3)
{
echo '- Le mot de passe choisi est trop court.<br /><a href=inscription.php>Reessayer</a>';
$passlok = 0;
}
else
{
$passlok = 1;
// PARTIE CAPTCHA
if ($captcha==$resultat)
{
if ($password==$passrep)
{
$passmat = 1;
mysql_select_db($realmd,$connexion) or die(mysql_error());
$id = mysql_query("SELECT * FROM account ORDER BY id DESC LIMIT 1");
$lo = mysql_fetch_assoc($id);
$idacc = $lo["id"] + 1;
$ip = $_SERVER['REMOTE_ADDR'];
$passw = sha1($password);
mysql_query("INSERT INTO account VALUES ('$idacc','$username', '$passw', 0, '', '', '', '$email', '$date', '$ip', 0, 0, '$date', 0, '$expansion', 0, 2, 0, '2011-05-20 04:21:37', '$date', '2011-05-20 04:21:37', '$date')")
or die ("Erreur lors de la creation du compte");
echo '<p class="info"><br /><br /><br />Votre enregistrement a été effectué avec succes !<br /></p>';
}
else
{
echo '- Les mots de passe ne sont pas identiques.<br /><a href=inscription.php>Reessayer</a>';
$passmat = 0;
}
}
if ($captcha != $resultat)
{
echo '- Le code de verification est faux.<br /><a href=inscription.php>Reessayer</a><br />';
$captchaok = 0;
}
}
}
}
}
}
}
}
break;
}
?>