Inscription aide svp

Fermé
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 - 13 janv. 2011 à 15:28
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 - 13 janv. 2011 à 17:19
Bonjour, depuis 3 mois j'arrive pas a le faire fonctionner svp aide


<?php
include('config.php');
?>
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
<title>Inscription</title>
</head>
<body>
<center>
<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Espace Membre" /></a>
</center>
<?php
//On verifie que le formulaire a ete envoye
if(isset($_POST['username'], $_POST['sha_pass_hash'], $_POST['passverif'], $_POST['email']) and $_POST['username']!='')
{
//On enleve lechappement si get_magic_quotes_gpc est active
if(get_magic_quotes_gpc())
{
$_POST['username'] = stripslashes($_POST['username']);
$_POST['sha_pass_hash'] = stripslashes($_POST['sha_pass_hash']);
$_POST['passverif'] = stripslashes($_POST['passverif']);
$_POST['email'] = stripslashes($_POST['email']);
}
//On verifie si le mot de passe et celui de la verification sont identiques
if($_POST['sha_pass_hash']==$_POST['passverif'])
{
//On verifie si le mot de passe a 6 caracteres ou plus
if(strlen($_POST['sha_pass_hash'])>=6)
{
//On verifie si lemail est valide
if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
{
//On echape les variables pour pouvoir les mettre dans une requette SQL
$username = mysql_real_escape_string($_POST['username']);
$sha_pass_hash = mysql_real_escape_string($_POST['sha_pass_hash']);
$email = mysql_real_escape_string($_POST['email']);
//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
$dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"'));
if($dn==0)
{
//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
$dn2 = mysql_num_rows(mysql_query('select id from users'));
$id = $dn2+1;
//On enregistre les informations dans la base de donnee
if(mysql_query('insert into account(id, username, sha_pass_hash, email, signup_date) values ('.$id.', "'.$username.'", "'.$sha_pass_hash.'", "'.$email.'", "'.time().'")'))
{
//Si ca a fonctionne, on naffiche pas le formulaire
$form = false;
?>
<div class="foot">
Votre compte a bien étai créer ,merci d'attendre 5 seconde avant de fermer le page
<meta http-equiv="refresh" content="5; URL=rejoindre.php">
</div>
<?php
}
else
{
//Sinon on dit quil y a eu une erreur
$form = true;
$message = 'Une erreur est survenue lors de l\'inscription.';
}
}
else
{
//Sinon, on dit que le pseudo voulu est deja pris
$form = true;
$message = 'Un autre utilisateur utilise déjà le nom d\'utilisateur que vous désirez utiliser.';
}
}
else
{
//Sinon, on dit que lemail nest pas valide
$form = true;
$message = 'L\'email que vous avez entré n\'est pas valide.';
}
}
else
{
//Sinon, on dit que le mot de passe nest pas assez long
$form = true;
$message = 'Le mot de passe que vous avez entré contien moins de 6 caractères.';
}
}
else
{
//Sinon, on dit que les mots de passes ne sont pas identiques
$form = true;
$message = 'Les mots de passe que vous avez entré ne sont pas identiques.';
}
}
else
{
$form = true;
}
if($form)
{
//On affiche un message sil y a lieu
if(isset($message))
{
echo '<div class="message">'.$message.'</div>';
}
//On affiche le formulaire
?>
<div class="content">
<form action="sign_up.php" method="post">
Veuillez remplir ce formulaire pour vous inscrire:<br />
<div class="center">
<label for="username">Nom d'utilisateur</label><input type="text" name="username" value="<?php if(isset($_POST['username'])){echo htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<label for="sha_pass_hash">Mot de passe<span class="small">(6 caractères min.)</span></label><input type="password" name="sha_pass_hash" /><br />
<label for="passverif">Mot de passe<span class="small">(vérification)</span></label><input type="password" name="passverif" /><br />
<label for="email">Email</label><input type="text" name="email" value="<?php if(isset($_POST['email'])){echo htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<br />
<input type="submit" value="Envoyer" />
</div>
</form>
</div>
<?php
}
?>
<div class="foot"><a href="<?php echo $url_home; ?>">Retour à l'accueil</a> - <a href="<?php echo $sdw; ?>">Support du Web</a></div>
</body>
</html>


A voir également:

9 réponses

aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 15:33
a oui jai oublier sa , quand je couvre la page sa me dit sa :


Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\sign_up.php on line 41

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\sign_up.php on line 45

Une erreur est survenue lors de l'inscription.
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 15:39
svp svp aide !!!
0
Laorra Messages postés 195 Date d'inscription dimanche 12 novembre 2006 Statut Membre Dernière intervention 18 juillet 2011 107
13 janv. 2011 à 15:43
Bonjour,

Déjà, sans lancer le fichier, tu as un problème avec ton preg_match() ligne 30.

Déjà, tu utilise les même caractère spéciaux plusieurs fois, et tu ne les échappes pas.

Essaye de corriger ton expression régulière pour le test de l'email.
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 15:52
tu utilise les même caractère spéciaux plusieurs fois, et tu ne les échappes pas.

je comprent pas


Essaye de corriger ton expression régulière pour le test de l'email.

quoi ? sa

<label for="email">Email</label><input type="text" name="email" value="<?php if(isset($_POST['email'])){echo htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<br />
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 15:53
a sa pour émail

{
//On verifie si lemail est valide
if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
{
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 16:05
je trouve pas le probléme !!!! AIDE SVP SVP SVP SVP !!!!!

je suis pa dieu
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 16:13
xD jai trouver les bléme
0
Laorra Messages postés 195 Date d'inscription dimanche 12 novembre 2006 Statut Membre Dernière intervention 18 juillet 2011 107
13 janv. 2011 à 16:16
Je ne vois pas le rapport avec Dieu mais essayons.

Est ce que c'est toi qui à fait ce code :

if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))  
?

L'expression régulière est le premier paramètre de ta fonction preg_match :

#^(([a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i


test en remplaçant ta ligne par ça :

if(preg_match('/^[^@]+@(([\w\-]+\.){1,4}[a-zA-Z]{2,4}|(([01]?\d?\d|2[0-4]\d|25[0-5])\.){3}([01]?\d?\d|2[0-4]\d|25[0-5]))$/',$_POST['email'])){
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 16:21
merci !!!! comme on dit dans wow TY!!!
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 16:22
nn !!! marche pas me dit

Parse error: parse error in C:\wamp\www\sign_up.php on line 73
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 16:19
<?php
include('config.php');
?>
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link href="<?php echo $design; ?>/style.css" rel="stylesheet" title="Style" />
<title>Inscription</title>
</head>
<body>
<center>
<a href="<?php echo $url_home; ?>"><img src="<?php echo $design; ?>/images/logo.png" alt="Espace Membre" /></a>
</center>
<?php
//On verifie que le formulaire a ete envoye
if(isset($_POST['username'], $_POST['sha_pass_hash'], $_POST['passverif'], $_POST['email']) and $_POST['username']!='')
{
//On enleve lechappement si get_magic_quotes_gpc est active
if(get_magic_quotes_gpc())
{
$_POST['username'] = stripslashes($_POST['username']);
$_POST['sha_pass_hash'] = stripslashes($_POST['sha_pass_hash']);
$_POST['passverif'] = stripslashes($_POST['passverif']);
$_POST['email'] = stripslashes($_POST['email']);
}
//On verifie si le mot de passe et celui de la verification sont identiques
if($_POST['sha_pass_hash']==$_POST['passverif'])
{
//On verifie si le mot de passe a 6 caracteres ou plus
if(strlen($_POST['sha_pass_hash'])>=6)
{
//On verifie si lemail est valide
if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_'{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
{
//On echape les variables pour pouvoir les mettre dans une requette SQL
$username = mysql_real_escape_string($_POST['username']);
$sha_pass_hash = mysql_real_escape_string($_POST['sha_pass_hash']);
$email = mysql_real_escape_string($_POST['email']);
//On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
$dn = mysql_num_rows(mysql_query('select id from account where username="'.$username.'"'));
if($dn==0)
{
//On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
$dn2 = mysql_num_rows(mysql_query('select id from account'));
$id = $dn2+1;
//On enregistre les informations dans la base de donnee
if(mysql_query('insert into account(id, username, sha_pass_hash, email) values ('.$id.', "'.$username.'", "'.$sha_pass_hash.'", "'.$email.'", "'.time().'")'))
{
//Si ca a fonctionne, on naffiche pas le formulaire
$form = false;
?>
<div class="foot">
Votre compte wow a bien étai créer ,merci d'attendre 5 seconde avant de fermer le page
<meta http-equiv="refresh" content="5; URL=rejoindre.php">
</div>
<?php
}
else
{
//Sinon on dit quil y a eu une erreur
$form = true;
$message = 'Une erreur est survenue lors de l\'inscription.';
}
}
else
{
//Sinon, on dit que le pseudo voulu est deja pris
$form = true;
$message = 'Un autre utilisateur utilise déjà le nom d\'utilisateur que vous désirez utiliser.';
}
}
else
{
//Sinon, on dit que lemail nest pas valide
$form = true;
$message = 'L\'email que vous avez entré n\'est pas valide.';
}
}
else
{
//Sinon, on dit que le mot de passe nest pas assez long
$form = true;
$message = 'Le mot de passe que vous avez entré contien moins de 6 caractères.';
}
}
else
{
//Sinon, on dit que les mots de passes ne sont pas identiques
$form = true;
$message = 'Les mots de passe que vous avez entré ne sont pas identiques.';
}
}
else
{
$form = true;
}
if($form)
{
//On affiche un message sil y a lieu
if(isset($message))
{
echo '<div class="message">'.$message.'</div>';
}
//On affiche le formulaire
?>
<div class="content">
<form action="sign_up.php" method="post">
Veuillez remplir ce formulaire pour vous inscrire:<br />
<div class="center">
<label for="username">Nom d'utilisateur</label><input type="text" name="username" value="<?php if(isset($_POST['username'])){echo htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<label for="sha_pass_hash">Mot de passe<span class="small">(6 caractères min.)</span></label><input type="password" name="sha_pass_hash" /><br />
<label for="passverif">Mot de passe<span class="small">(vérification)</span></label><input type="password" name="passverif" /><br />
<label for="email">Email</label><input type="text" name="email" value="<?php if(isset($_POST['email'])){echo htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
<br />
<input type="submit" value="Envoyer" />
</div>
</form>
</div>
<?php
}
?>
<div class="foot"><a href="<?php echo $url_home; ?>">Retour à l'accueil</a> - <a href="<?php echo $sdw; ?>">Support du Web</a></div>
</body>
</html>
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 16:19
encor un probléme il ma fiche que sa

Une erreur est survenue lors de l'inscription.

aide svp
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 16:23
ton truc pour émail marche pas jai déja dit mais si ta pas vu je le redit xD

Parse error: parse error in C:\wamp\www\sign_up.php on line 73
0
Laorra Messages postés 195 Date d'inscription dimanche 12 novembre 2006 Statut Membre Dernière intervention 18 juillet 2011 107
13 janv. 2011 à 16:25
As-tu bien renseigné les champs de connexion à ta BDD?

Le problème viens de ta requête SQL.

Essaye de faire un echo de ta requête au lieu de la lancer, et execute là dans PHPMyAdmin.
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 16:27
mais cette page php FAIT chi....... ^^
0
Laorra Messages postés 195 Date d'inscription dimanche 12 novembre 2006 Statut Membre Dernière intervention 18 juillet 2011 107
13 janv. 2011 à 16:28
mon code n'est pas la ligne 73, et as tu bien remplacer l'accolade qui est à la ligne d'après?

Peu importe, si ton expression fonctionne, garde celle ci.

Peux-tu me copier l'echo de ta requête?
0
Akronos Messages postés 140 Date d'inscription jeudi 6 janvier 2011 Statut Membre Dernière intervention 31 janvier 2011 32
Modifié par Akronos le 13/01/2011 à 16:49
Bon déjà si tu veux faire un faux site WoW pour récupérer les pseudo et mdp entrer comme on dit:
T'es spotted.

Ensuite, essai d'apprendre par toi même, l'expression régulière que tu utilises est celle récupéré ici si je me trompe pas:
https://forums.commentcamarche.net/forum/affich-20513316-expression-regulieres-php#p20514253

T'aurais au moins pu lire tout, tu verrais que celle que tu utilises n'est pas la meilleure.

Ensuite pour ton problème de base:
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\sign_up.php on line 41

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\sign_up.php on line 45


Celà signifie que ton premier paramère de mysql_num_rows() ligne 41 et 45 de sign_up.php est un booléen au lieu d'une ressource mySQL.

Ici tu as plus d'informations, je refuse de t'aider d'avantage, car pour l'utilité que tu vas faire de se code je ne peux me permettre de te dire quoi mettre et où.

Ps: s'il te plait prends des cours de français.
0
Laorra Messages postés 195 Date d'inscription dimanche 12 novembre 2006 Statut Membre Dernière intervention 18 juillet 2011 107
13 janv. 2011 à 16:50
Ah ah!! Je venais d'abandonner =)
0
Akronos Messages postés 140 Date d'inscription jeudi 6 janvier 2011 Statut Membre Dernière intervention 31 janvier 2011 32
13 janv. 2011 à 16:55
Mouai il s'est fait hard brained, ce qui m'ennui c'est qu'à cause de ça l'image de beaucoup en prends un coup, je veux dire suffit de lire quelque post récents voir ce qu'il dit:
"Question aux pros" => Il ne connait pas la programmation et parle assez vite de piratage
Sa regex qui est prise d'un autre post: https://forums.commentcamarche.net/forum/affich-20513316-expression-regulieres-php#p20514253

Enfin, le genre type de personne qui salisse la réputation des débutants...
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 16:56
jai trouver le bléme :sha_pass_hash parce que a _ et fa fait un caré
0
Laorra Messages postés 195 Date d'inscription dimanche 12 novembre 2006 Statut Membre Dernière intervention 18 juillet 2011 107
13 janv. 2011 à 16:57
Ça me rappel mes débuts sur le site du zero :')
0
aurelienpm974 Messages postés 131 Date d'inscription mercredi 8 décembre 2010 Statut Membre Dernière intervention 20 février 2011 7
13 janv. 2011 à 16:57
si sur toi le programe marche envoi le programe
0