Rechercher : dans
Par :

[php] Contrôle majuscules/minuscules

Dernière réponse le 11 sep 2007 à 21:18:31 chedev, le 3 aoû 2007 à 08:20:03 
 Signaler ce message aux modérateurs

Bonjour à tous

Je fais saisir un pseudo dans un formulaire avec le code PHP suivant:

<form method="post" action="connexion_ok.php">
        <label for="pseudo"> Pseudo</label><br /> 
        <input name="pseudo" type="text"
        onFocus="javascript:this.value=''"
        value= <?php echo $pseudoF;?> size=16 maxlength=15 />
        <br />
        <label for="mdp">Mot de Passe </label><br />
        <input name="mdp" type = password id="mdp" onFocus="javascript:this.value=''"
        value= <?php echo 'xxxxx';?> size=16 maxlength=15 />
        <br />
        <br />
        <input type="submit" value="Ok" />
</form>


Dans le fichier connexion_ok.php appelé par "form", j'ai:
if (empty($_POST['pseudo']) || empty($_POST['mdp']) ) {//Oubli d'un champ
        $message = $Non_Connex . $champs_vide . $retour;
} else {
        include("../Admin/acces_xxx.php");
        //On enlève les balises html éventuelles
        $pseudo = htmlspecialchars($_POST['pseudo'], ENT_QUOTES);
        $mdp = htmlspecialchars($_POST['mdp'], ENT_QUOTES);
        //Vérification du pseudo
        $nombrepseudo = mysql_result(mysql_query("SELECT COUNT(*) FROM membres WHERE membre_pseudo = '".$pseudo."'"), 0);
        if($nombrepseudo == 0) {


Je constate que mon contrôle de pseudo ne tient pas compte du fait que l'on saisisse des majuscules ou des minuscules:
Si la base "membres" contient un enregistrement où membre_pseudo vaut "Toto", ce contrôle laisse passer "toto", "Toto", "TOTO", ...

Merci à qui peut me dire pourquoi, et surtout comment je dois procéder pour n'accepter que la saisie conforme aux majuscules/minuscules figurant dans la base.
Configuration: Windows 2000
Firefox 2.0.0.6

Meilleures réponses pour « [php] Contrôle majuscules/minuscules » dans :
Google - Minuscules, majuscules, accents, pluriels VoirGoogle ne tient pas compte de la casse des caractères. Donc que vous utilisiez des majuscules, des minuscules ou les 2 mélangées vous obtiendrez les mêmes résultats. Google ne tient pas compte des accents, cédilles, tildes espagnols… Ainsi,...
PHP - Les variables VoirConcept de variable avec PHP Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage PHP peuvent être de trois...

1

 chedev, le 11 sep 2007 à 21:18:31
  • +1

Un petit up pour signaler à ceux qui pourraient avoir le même problème à résoudre.

J'ai trouvé la solution ici http://dev.mysql.com/doc/refman/5.0/fr/char.html

En résumé:
L'attribut BINARY signifie que les valeurs sont classées et triées en tenant compte de la casse, suivant l'ordre des caractères ASCII de la machine ou est installé le serveur MySQL.

Répondre à chedev