[Resolu] Détecter lorsque l'utilisateur n'a rien rentré dans un input?

Détecter lorsque l'utilisateur n'a rien rentré dans un input? [Resolu] - PHP - Programmation

Marsh Posté le 27-11-2008 à 17:19:33    

Bonsoir a tous,
 
j'ai une petite question stupide sur les tests dont je n'ai pas trouve la reponse dans la documentation.
 
J'ai un <input/> de type 'text' dans lequel je suis sense rentrer des chiffres.
J'aimerais pouvoir detecter lorsque l'utilisateur va rentrer des lettres ou rien du tout.
 
J'aimerais donc pouvoir detecter 3 'etats' :
 
- l'utilisateur rentre un chiffre
- l'utilisateur rentre une lettre
- l'utilisateur ne rentre rien du tout
 
J'ai bien reussi a determiner si l'utilisateur rentre un chiffre ou une lettre en utilisant is_numeric() mais malheureusement ca ne fait aucune difference entre les strings (a,b,c etc) et le 'vide'.
 
Est-ce qu'il y a un moyen de determiner quand l'utilisateur n'a rien rentre?


Message édité par alcomachaon le 27-11-2008 à 17:32:17
Reply

Marsh Posté le 27-11-2008 à 17:19:33   

Reply

Marsh Posté le 27-11-2008 à 17:27:35    

C'est quoi pour toi un "caractere vide"?

Reply

Marsh Posté le 27-11-2008 à 17:28:35    

C'est rien du tout. Je me suis sans doute mal explique mais je veux juste dire par la que l'user n'aura rien tape, la case sera vide.
 
Enfin j'ai trouve, on peut utiliser un test sur la longueur de la chaine via strlen($var).  
 
Je vais changer le titre pour etre plus explicite  :)


Message édité par alcomachaon le 27-11-2008 à 17:32:52
Reply

Marsh Posté le 27-11-2008 à 17:44:15    

Tu peux vider temporairement la chaine de ses caractères blancs et tester avec empty() :
http://fr.php.net/trim
http://fr.php.net/empty
 

Code :
  1. <?php
  2. $string = trim($_POST['input']);
  3. if(!empty($string)) {
  4.    //$_POST['input'] est ok...  
  5. } else {
  6.    //$_POST['input'] est vide...
  7. }
  8. ?>

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed