[RESOLU] connexion pseudo majuscule

Eléphant du PHP | 233 Messages

27 avr. 2014, 20:51

Bonsoir à tous,
j'ai un problème lors de la connexion :
L'utilisateur qui veut se connecté avec son pseudo, qu'il mette en minuscule ou en majuscule, il peut se connecter quand même alors que lors de l'inscription le pseudo a été enregistré en minuscule.
Y-a-t-il un moyen de contrôle ça ?

Merci d'avance.

ViPHP
xTG
ViPHP | 7331 Messages

27 avr. 2014, 22:44

Tu as mis quoi dans ta requête ? Un LIKE au lieu d'un égal ?
Ou alors tu forces la variable injectée (pseudo) en minuscule lors de la comparaison.

Eléphant du PHP | 233 Messages

27 avr. 2014, 23:05

non pourtant voici mon code de connexion :

<?php

if (!empty($_POST['pseudo']) && !empty($_POST['mot_passe']))
        {
               
                $pseudo = mysql_real_escape_string(htmlspecialchars($_POST['pseudo']));
                $mot_passe = mysql_real_escape_string(htmlspecialchars($_POST['mot_passe']));
               
               
                $sql = mysql_query('SELECT COUNT(*) AS nb_pseudo FROM membres WHERE pseudo="'.$pseudo.'"');
               
               
                if (mysql_result($sql,0,'nb_pseudo') == 1)
                {
....

?>

Eléphant du PHP | 233 Messages

28 avr. 2014, 09:50

Personne n'a une idée, je ne comprends comment c'est possible de se connecter aussi bien en majuscule qu'un minuscule :?:

Eléphant du PHP | 422 Messages

28 avr. 2014, 11:09

hello

javascript ? au niveau du formulaire !
toujours faire une recherche sur http://www.php.net et/ou sur http://www.google.fr :)
utiliser http://ideone.com/ pour vos codes :)

Eléphant du PHP | 233 Messages

28 avr. 2014, 11:43

Bonjour,
non du tout, voici le script :
J'ai également un fichier commun qui contient les variables COOKIES, je le joint avec sait-on jamais...
<?php
require('include/common.php');

if (isset($_SESSION['logged']) && $_SESSION['logged'] === true)
{
	header('location: accueil.html');
}
else
{
	//Ici on gérera le formulaire de connexion.
	include('connexion.php');

	designconnexion($lang['connexion']);
?>
<h1>Connexion</h1>
<p>

  <?php
	if($config['autorisation_inscriptions'] == 1)
	{
		echo $lang['vous_n_etes_pas_encore_inscrit'].'&nbsp;&nbsp;<img src="include/arrow.gif" alt="" width="21" height="17" align="absmiddle" /><a href="inscription.php">'.$lang['vous_pouvez_vous_inscrire_ici'].'</a>&nbsp;&nbsp;<img src="include/arrow.gif" alt="" width="21" height="17" align="absmiddle" /><a href="forgot-password.php">Mot de passe oublié ?</a><br />';
	}
	else
	{
		echo $lang['les_inscriptions_sont_fermees'];
	}
?></p>
<?php
	if(isset($erreur))
	{
		echo '<p><strong>'.$erreur.'</strong></p>';
	}
?><br />
<div id="connect">
<span class="flottant_connexion">CONNEXION<br />
A VOTRE ESPACE<br />
 MEMBRES</span>
<form method="post" action="index.php">
<p>
<label for="pseudo">Votre pseudo :</label> <input type="text" placeholder="login" name="pseudo" id="pseudo" /><br />

<br /><label for="mot_passe">Votre mot de passe :</label> <input type="password" placeholder="*******" name="mot_passe" id="mot_passe" /><br />

<br /><label for="souvenir">Connexion automatique </label><input type="checkbox" name="souvenir" id="souvenir" /><br />

<br /><input type="submit" class="bnt-connect" name="connexion" value="<?php echo $lang['se_connecter']; ?>" />
</p>
</form><br />
</div>
Le fichier commun.php
<?php

if (!isset($_SESSION['logged']) OR $_SESSION['logged'] === false)
{
	if (isset($_COOKIE['pseudo'], $_COOKIE['mot_passe']))
	{
		$pseudo = mysql_real_escape_string(htmlspecialchars($_COOKIE['pseudo']));
		$mot_passe = mysql_real_escape_string(htmlspecialchars($_COOKIE['mot_passe']));

		$sql = mysql_query('SELECT pseudo FROM membres WHERE pseudo ="'. $pseudo .'"') or die(mysql_error());

               
               $existe_pseudo = mysql_num_rows($sql);
if($existe_pseudo)
{
etc...

?>
Merci de votre aide :wink:

Eléphant du PHP | 422 Messages

28 avr. 2014, 11:47

hello

dans la base il y a des maj et minu dans les pseudo ? (phpmyadmin)

++
toujours faire une recherche sur http://www.php.net et/ou sur http://www.google.fr :)
utiliser http://ideone.com/ pour vos codes :)

Eléphant du PHP | 233 Messages

28 avr. 2014, 11:55

Cela dépend, lors de l'enregistrement, l'utilisateur à pu rentrer par exemple Momo ou momo ou MOMO, dans le cas précis, il est enregistré Momo (dans la base), mais lors de la connexion il peut se connecter avec MOMO

Eléphant du PHP | 233 Messages

28 avr. 2014, 14:52

Je viens de faire le test sur mon hébergeur 1&1, j'ai mis mon identifiant en majuscule et la connexion s'est faite sans problème (mon ordi m'a demandé d'enregistrer le nouveau mot de passe).
J'ai fais pareil sur un autre site sur lequel je suis inscrit, et là idem...
Alors visiblement c'est sur tous les sites !

Est-ce bien normal ?

Eléphant du PHP | 422 Messages

28 avr. 2014, 15:14

hello

en passant
$mot_passe = mysql_real_escape_string(htmlspecialchars($_COOKIE['mot_passe']));
le mdp en cookie ....


concernant le problème de comparaison de string regards par ici http://stackoverflow.com/questions/7857 ... tive-query

donc c'est normal
toujours faire une recherche sur http://www.php.net et/ou sur http://www.google.fr :)
utiliser http://ideone.com/ pour vos codes :)

Eléphant du PHP | 233 Messages

28 avr. 2014, 18:35

Concernant le mot de passe, c'est bien ce que j'avais mis... :D
Par contre j'ai rajouté BANARY dans ma requête et effectivement "l''orthographe" du pseudo est respecté ! =D>
 $sql = mysql_query('SELECT pseudo FROM membres WHERE BINARY pseudo ="'. $pseudo .'"') or die(mysql_error());
donc affaire résolut, un grand merci telnes

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

29 avr. 2014, 10:21

Modération :
Si ta question est résolue, pense à l'indiquer pour que les futures personnes qui voudront consulter ce sujet sachent qu'il contient une solution.
Tu peux réaliser cette opération toi-même en cliquant sur le bouton vert "Mettre le sujet en tant que Résolu" situé en haut de la page à côté du titre du sujet.


PS : je fait pour toi, pour cette fois ;)


@+
Il en faut peu pour être heureux ......