IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Test php majuscules ou minuscules


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 11
    Points : 7
    Points
    7
    Par défaut Test php majuscules ou minuscules
    Bonjour à tous,

    je cherche à savoir si le contenu d'une variable est en majuscule ou en minuscule.
    ceci afin d'interdire l'entrée de majuscules dans un formulaire.
    ou alors mieux si quelqu'un sait comment faire, dans le cas ou l'on à des majuscules, les convertir en minuscules.

    merci d'avance de votre aide

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    406
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 406
    Points : 380
    Points
    380
    Par défaut
    Salut,
    tu peux voir du côté de ctype_upper.

  3. #3
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    salut

    je ne pense pas qu'il y a une fonction prédéfinit mais vous pouvez vérifier avec une petit expression
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    /*
    * 0:  si le cratère n'est pas alphabétique
    * 1 : si le caractère est une minuscule
    * 2   si le caractère est une majuscule 
    */
     
    function casse($s)
    	  {
    	    if  (preg_match('/^[a-z]+$/', $s) == true)   return 1; 
    		 else
    		if  (preg_match('/^[A-Z]+$/', $s) == true)   return 2;
    		 else
    		 return 0;
     
    	  }
    @+

  4. #4
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    Citation Envoyé par zakaria84 Voir le message
    Salut,
    tu peux voir du côté de ctype_upper.
    je viens d'apprendre quelque chose, merci.

  5. #5
    Futur Membre du Club
    Inscrit en
    Mai 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    merci beaucoup
    je teste ca au plus vite

  6. #6
    Futur Membre du Club
    Inscrit en
    Mai 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    alors en fait mon probleme n'est pas completement résolu
    dans la chaine de caracteres que je vérifie, j'ai un "-"
    est ce que ca pose probleme?

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    406
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 406
    Points : 380
    Points
    380
    Par défaut
    Te causer un problème à quel niveau?
    le "ctype_upper" n'interviendra que sur les caractères qu'on peut mettre en majuscule !?!?

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    406
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 406
    Points : 380
    Points
    380
    Par défaut
    As-tu déjà essayé pour voir si ça peut te causer un problème avec un "-"?

  9. #9
    Futur Membre du Club
    Inscrit en
    Mai 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    en fait, l'expression que je teste ressemble à ca:
    123123f-f1d57g

    donc 6 caractères un - et 6 caractères, le problèmes c'est que le script me renvoi tout le temps que l'expression contient pas que des minuscules alors que ce n'est pas le cas

    (j'utilise la fonction pour vérifier qu'il n'y est que des minuscules finalement)

  10. #10
    Membre éclairé
    Inscrit en
    Septembre 2006
    Messages
    685
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 685
    Points : 658
    Points
    658
    Par défaut
    Avec un strtolower sans doute.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump(strtolower($chaine) == $chaine);
    Je sais pas si c'est plus léger qu'une regex, tout doit dépendre de la taille de la chaine.

  11. #11
    Invité
    Invité(e)
    Par défaut
    Si effectivement tu veux récupérer les données de ton formulaire et les convertir en minuscules :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $chaine_en_minuscule = strtolower($_POST['chaine']);

  12. #12
    Futur Membre du Club
    Inscrit en
    Mai 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    c'est impeccable merci!

    encore une question,

    comment je fait pour "sommer" des variables, je m'explique:
    j'ai par exemple la variable 1 qui contient "ma" et la 2 qui contient "man"
    comment obtenir une variable 3 contenant "ma-man"?

  13. #13
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par meingutter Voir le message
    comment je fait pour "sommer" des variables, je m'explique:
    j'ai par exemple la variable 1 qui contient "ma" et la 2 qui contient "man"
    comment obtenir une variable 3 contenant "ma-man"?
    Ca s'appelle la "concaténation" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $variable1 = 'ma';
    $variable2 = 'man';
    $variable3 = $variable1.'-'.$variable2; // donne : ma-man
    $variable4 = $variable1.$variable2; // donne : maman

  14. #14
    Futur Membre du Club
    Inscrit en
    Mai 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    c'est parfait résolu
    merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Test Mot Majuscules et Minuscule
    Par AODRENN dans le forum Langage
    Réponses: 9
    Dernier message: 09/09/2007, 11h29
  2. Réponses: 3
    Dernier message: 08/08/2005, 11h24
  3. [PHP-JS] var javaScript avec test php
    Par lepierre dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/12/2004, 12h58
  4. Différence entre majuscule et minuscule dans une requête
    Par Asdorve dans le forum Langage SQL
    Réponses: 2
    Dernier message: 23/06/2004, 14h42
  5. [RICHEDIT] -> Majuscule et Minuscule ?
    Par MaTHieU_ dans le forum C++Builder
    Réponses: 2
    Dernier message: 18/01/2004, 12h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo