Aide mysql

Benjamin -  
 Benjamin -
Bonjour,

Voila j'ai un problème avec mysql en faite j'ai une fonctions qui vérifie dans la base de donnes si un login est déjà utiliser (lors de l'inscription) mais voila quand un pseudo Franck est deja prit le pseudo franck lui passe et je ne le veut pas comment faire pour que le test ne soi pas sensible a la casse

Voila ma requette toute simple

SELECT login FROM mabase WHERE login ='$login';
Configuration: Windows Vista
Firefox 3.0.4

2 réponses

  1. pitxu Messages postés 708 Statut Membre 95
     
    bonjour,

    la fonction php strtolower() te permet de transformer ta chaine en minuscule, il suffit donc de faire un test du genre :

    <?
    if (strtolower($login_db)==strtolower($login)) {
    echo "Utilisateur déjà enregistré"; }
    else {
    echo "C'est ok !"; }
    ?>
    0
  2. Nijin Messages postés 27 Statut Membre 3
     
    Bonjour,

    Utilise la fonction "UPPER" (ça met les caractères entre ( ) en majuscule) en SQL dans ta requête ce qui donnerai :

    SELECT login FROM mabase WHERE UPPER(login) =UPPER('$login');

    Tu peux faire la même chose avec la fonction LOWER() qui met tout ce qu'il y a entre ( ) en minuscule

    Pour t'aider : http://www.toutestfacile.com/sql/cours_imprimables/SQLFacile.com-functstring.php5

    Bon courage
    0
    1. Benjamin
       
      Merci beaucoup de vos reponses
      0
      1. Benjamin > Benjamin
         
        Nickel ca fonctionne a merveille merci
        0