J'ai eu le temps d'essayer la nouvelle version et voici quelques remarques:
- Image:
Bonne journée
Blackorion35 a écrit:Ce qui est intéressant c'est surtout la vitesse et la fonction base de données des utilisateurs qui n'est pas codée en MySQL mais en base de données natives (PHP à lecture et écriture) ; elle permettra d'encodé en MD5 les mots de passe des utilisateurs, même si celle-ci est piratée elle ne pourra être lue !
<?php
$database = './usersdb1.php';
$success_page = './createuser.php';
$error_message = "";
if (!file_exists($database))
{
die('User database not found!');
exit;
}
if ($_SERVER['REQUEST_METHOD'] == 'POST' && $_POST['form_name'] == 'signupform')
{
$newusername = $_POST['username'];
$newemail = $_POST['email'];
$newpassword = $_POST['password'];
$confirmpassword = $_POST['confirmpassword'];
$newfullname = $_POST['fullname'];
$code = 'NA';
if ($newpassword != $confirmpassword)
{
$error_message = 'Les mots de passe ne correspondent pas. Merci de reessayer.';
}
else
if (!preg_match("/^[A-Za-z0-9_!@$]{1,50}$/", $newusername))
{
$error_message = 'Votre nom de compte n est pas valide. Veuillez reessayer.';
}
else
if (!preg_match("/^[A-Za-z0-9_!@$]{1,50}$/", $newpassword))
{
$error_message = 'Votre mot de passe n est pas valide. Veuillez reessayer.';
}
else
if (!preg_match("/^[A-Za-z0-9_!@$.' &]{1,50}$/", $newfullname))
{
$error_message = 'Votre pseudonyme n est pas valide.';
}
else
if (!preg_match("/^.+@.+\..+$/", $newemail))
{
$error_message = 'Adresse e-mail que vous avez entrez n est pas correcte.';
}
$items = file($database, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach($items as $line)
{
list($username, $password, $email, $fullname) = explode('|', trim($line));
if ($newusername == $username)
{
$error_message = 'Le nom de compte renseigner existe deja. Merci d en choisir un autre.';
break;
}
}
if (empty($error_message))
{
$file = fopen($database, 'a');
fwrite($file, $newusername);
fwrite($file, '|');
fwrite($file, md5($newpassword));
fwrite($file, '|');
fwrite($file, $newemail);
fwrite($file, '|');
fwrite($file, $newfullname);
fwrite($file, '|0|');
fwrite($file, $code);
fwrite($file, "\r\n");
fclose($file);
$subject = 'Compte WebOS Rynna creer !';
$message = 'Votre nom de compte a bien ete creer.';
$message .= "\r\nUsername: ";
$message .= $newusername;
$message .= "\r\nPassword: ";
$message .= $newpassword;
$message .= "\r\n";
$header = "From: support@rynnawebos.fr"."\r\n";
$header .= "Reply-To: support@rynnawebos.fr"."\r\n";
$header .= "MIME-Version: 1.0"."\r\n";
$header .= "Content-Type: text/plain; charset=utf-8"."\r\n";
$header .= "Content-Transfer-Encoding: 8bit"."\r\n";
$header .= "X-Mailer: PHP v".phpversion();
mail($newemail, $subject, $message, $header);
mail('support@rynnawebos.fr', $subject, $message, $header);
header('Location: '.$success_page);
exit;
}
}
?>