[Résolu] Mot de passe et Mysql
29 messages
• Page 2 sur 2 • 1, 2
-

Ron56 - WRInaute impliqué

- Messages: 708
- Inscription: 20 Nov 2005
Voila le script d'enregistrement !
- Code: Tout sélectionner
<?php # Listing 5.10 - enregistrer-2.php
// Définir le titre de la page
$titre_page = "Enregistrement";
if (isset($_POST['submit']))
{ // Traiter le formulaire
// Créer une fonction pour échapper les données.
function echappement ($data)
{ global $bd; // connexion nécessaire
if (ini_get('magic_quotes_gpc'))
{ $data = stripslashes($data);
}
return mysql_escape_string($data);
} // fin de la fonction
include('../fonctions/sql_connect.php');
$message = NULL; // créer une variable vide
// Vérifier la présence d'un prénom
if (empty($_POST['prenom']))
{ $p = FALSE;
$message .= '<p>Vous avez oublié d\'indiquer votre prénom</p>';
}
else
{ $p = echappement($_POST['prenom']);
}
// Vérifier la présence d'un nom
if (empty($_POST['nom']))
{ $n = FALSE;
$message .= '<p>Vous avez oublié d\'indiquer votre nom</p>';
}
else
{ $n = echappement($_POST['nom']);
}
// Vérifier l'existence d'une adresse e-mail
if (empty($_POST['email']))
{ $e = FALSE;
$message .= '<p>Vous avez oublié d\'indiquer votre adresse e-mail</p>';
}
else
{ $e = echappement($_POST['email']);
}
// Vérifier la présence d'un nom d'utilisateur
if (empty($_POST['nom_utilisateur']))
{ $u = FALSE;
$message .= '<p>Vous avez oublié d\'indiquer votre nom d\'utilisateur</p>';
}
else
{ $u = echappement($_POST['nom_utilisateur']);
}
// Vérifier l'existence et l'exactitude du mot de passe
if (empty($_POST['mot_de_passe1']))
{ $mp = FALSE;
$message .= '<p>Vous avez oublié d\'indiquer votre mot de passe</p>';
}
else
{ if ($_POST['mot_de_passe1'] == $_POST['mot_de_passe2'])
{ $mp = echappement($_POST['mot_de_passe1']);
}
else
{ $mp = FALSE;
$message .= '<p>Votre mot de passe est différent de celui que vous avez précédemment déclaré</p>';
}
}
if ($p && $n && $e && $u && $mp) // Si tout est correct
{ // Voir si l'utilisateur existe déjà
$ver=mysql_query("SELECT id_utilisateur FROM utilisateurs where nom_utilisateur='$u'");
$verif=mysql_num_rows($ver);
if($verif=='0')
{ // créer une nouvelle requête
$rq = "INSERT INTO utilisateurs (nom_utilisateur, prenom, nom, email,
mot_de_passe, date_enreg) VALUES ('$u', '$p', '$n', '$e',
SHA1('$mp'), NOW())";
// lancer la requête d'enregistrement
$result = mysql_query($rq);
if ($result) // Si l'enregistrement est correct
{ // Envoyer éventuellement un e-mail
echo "<p><b>Merci de vous être enregistré sur notre site.</b></p>";
exit(); // terminer le script
}
else
{ echo "<p>Vous n'avez pas pu être enregistré à cause d'une erreur système".
"<p></p>" . mysql_error() . "<p></p>";
}
}
else
{ $message .= "<p>Nom d'utilisateur déjà utilisé</p>";
}
mysql_close(); // refermer la connexion avec la base de données
}
else
{ // Quelque chose n'est pas correct
$message .= "<p>Veuillez avoir l'obligeance de recommencer</p>";
}
}
// Afficher éventuellement un ou plusieurs messages d'erreur
if (isset($message))
{ echo "<font color='red'>$message</font>";
}
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<fieldset>
<legend>Veuillez renseigner le formulaire ci-dessous :</legend>
<p><b>Prénom :</b>
<input type="text" name="prenom" size="15" maxlength="15"
value="<?php if (isset($_POST['prenom'])) echo $_POST['prenom']; ?>"/>
</p>
<p><b>Nom :</b>
<input type="text" name="nom" size="30" maxlength="30"
value="<?php if (isset($_POST['nom'])) echo $_POST['nom']; ?>"/>
</p>
<p><b>Adresse e-mail :</b>
<input type="text" name="email" size="40" maxlength="40"
value="<?php if (isset($_POST['email'])) echo $_POST['email']; ?>"/>
</p>
<p><b>Nom d'utilisateur :</b>
<input type="text" name="nom_utilisateur" size="10" maxlength="20"
value="<?php if (isset($_POST['nom_utilisateur']))
echo $_POST['nom_utilisateur']; ?>"/>
</p>
<p><b>Mot de passe :</b>
<input type="password" name="mot_de_passe1" size="20" maxlength="20" />
</p>
<p><b>Confirmez votre mot de passe :</b>
<input type="password" name="mot_de_passe2" size="20" maxlength="20" />
</p>
</fieldset>
<div align="center">
<input type="submit" name="submit" value="Envoyer les informations" />
</div>
</form><!-- Fin du formulaire -->
<?php
// Fin de l'instruction conditionnelle principale
?>
- spidetra
- WRInaute passionné

- Messages: 1500
- Inscription: 7 Juil 2003
Essaye SHA1($mp) à la place de SHA1('$mp')
PHP
<? echo( sha1("tutu") ?>
=> 32a89bdcec2d50f9dc9747cd47ecfc14cf9c3dbe
mySQL
SELECT SHA1("tutu");
=> 32a89bdcec2d50f9dc9747cd47ecfc14cf9c3dbe
la comparaison entre les 2 chaines doit marcher
PHP
<? echo( sha1("tutu") ?>
=> 32a89bdcec2d50f9dc9747cd47ecfc14cf9c3dbe
mySQL
SELECT SHA1("tutu");
=> 32a89bdcec2d50f9dc9747cd47ecfc14cf9c3dbe
la comparaison entre les 2 chaines doit marcher
-

Ron56 - WRInaute impliqué

- Messages: 708
- Inscription: 20 Nov 2005
Alors
, Il reconnait le mot de passe , car le message suivant s'affiche :
Mais
, j'ai quand meme un bug car j'ai aussi ce méssage
mot de passe correct!
Mais
Une erreur est survenue, veuillez réessayer !
Dernière édition par Ron56 le Jeu Mar 23, 2006 17:12, édité 1 fois.
-

Ron56 - WRInaute impliqué

- Messages: 708
- Inscription: 20 Nov 2005
spidetra a écrit:c'est quoi la taille de ton champ mot_de_passe ?
C'était ca qui buggait
Mais le petit bug doit forcement venir ce cet portion de code :
- Code: Tout sélectionner
// Si le login a été validé on met les données en sessions
if ($loginOK) {
$_SESSION['id_utilisateur'] = $data['id_utilisateur'];
$_SESSION['nom_utilisateur'] = $data['nom_utilisateur'];
$_SESSION['prenom'] = $data['prenom'];
$_SESSION['nom'] = $data['nom'];
$_SESSION['email'] = $data['email'];
$_SESSION['date_enreg'] = $data['date_enreg'];
}
else {
echo 'Une erreur est survenue, veuillez réessayer !';
-

Ron56 - WRInaute impliqué

- Messages: 708
- Inscription: 20 Nov 2005
spidetra a écrit:Ron56 a écrit:C'était ca qui buggait, je l'ai mis a 100 , je suis trankil !
![]()
40 aurait suffit.
Ensuite, c'est du php je passe la main a plus compétent que moi
Merci beacoup , tu m'as vraiment débloquer la
- spidetra
- WRInaute passionné

- Messages: 1500
- Inscription: 7 Juil 2003
C'est pas un simple = qu'il faut là ?
$loginOK = true ? C'est pas ça le pb ?
- Code: Tout sélectionner
// On vérifie que son mot de passe est correct
if ($mot_de_passe == $data['mot_de_passe']) {
$loginOK == true;
echo 'mot de passe correct!';
$loginOK = true ? C'est pas ça le pb ?
-

Ron56 - WRInaute impliqué

- Messages: 708
- Inscription: 20 Nov 2005
spidetra a écrit:C'est pas un simple = qu'il faut là ?
- Code: Tout sélectionner
// On vérifie que son mot de passe est correct
if ($mot_de_passe == $data['mot_de_passe']) {
$loginOK == true;
echo 'mot de passe correct!';
$loginOK = true ? C'est pas ça le pb ?
je pense pas je vais essayer
-

Ron56 - WRInaute impliqué

- Messages: 708
- Inscription: 20 Nov 2005
- Code: Tout sélectionner
$loginOK = true;
echo 'mot de passe correct!';
}
}
}
// Si le login a été validé on met les données en sessions
if ($loginOK = true) {
Ca marche
29 messages
• Page 2 sur 2 • 1, 2
Lectures recommandées sur ce thème :
- Gestion des langues et des sessions en PHP / MySQL - 02-05-2004
- Impact du PageRank dans le positionnement Google - 18-04-2005
- Passage à l'heure d'été/hiver sur un forum phpBB - 31-10-2010
- Les sites les plus visibles pour le mot Google - 27-11-2002
- Google AdWords introduit le concept de niveau de qualité - 03-10-2005
- Script de mise en cache des pages (PHP MySQL) - 09-08-2010
- GoogleStats : analyse temps réel des visites de Google sur votre site - 02-10-2002
- Obtenir le nombre exact de requêtes effectuées sur Google - 09-03-2007
Consultez la description détaillée des produits ou services de Google suivants : Google Bombing
- Calculer l'indice de densité
Cet outil vous permet de calculer l'indice de densité d'un mot-clé d'une page web. Il est calculé à la fois pour la balise TITLE, la balise META description et l'ensemble du texte de la page. - Suggestions de mots-clés
Cet outil vous fournit une liste de mots sémantiquement proches du mot que vous fournissez en entrée. Il peut servir à vous donner des idées de mots à utiliser sur vos pages, voire de contenus à ajouter. - Suggestions Google Suggest
Cet outil vous permet d'obtenir une liste de 10 mots ou expressions suggérés par Google sur la base d'un mot que vous fournissez.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité
