problème avec un switch et les chaines de caractère !!

problème avec un switch et les chaines de caractère !! - PHP - Programmation

Marsh Posté le 20-12-2003 à 11:37:39    

bonjour !
 
je veux vérifier des champs de saisie et savoir s'ils contiennent quelques chose ! j'ai donc utilisé la fonction switch. elle fonctionne trés bien avec les chiffre mais j'ai beauoup de mal à la faire fonctionner avec les chaine de caractère. Je ne peux pas vérifier le contenu, la fonction switch s'arrette à la première condition  
 
 
Dés que je mets une valeur autre que null comme "xxxx" dans le champs de saisie, il m'affiche "la valeur est nul" alors qu'il devrait m'afficher "la valeur est xxxxx". Pourquoi il s'arette à la case case($nom_de_famille) ?
 
 
 

Code :
  1. echo "<br>$nom_de_famille<br>";
  2. switch (trim($nom_de_famille))
  3. {
  4. case ($nom_de_famille):
  5. echo "la valeur est nul";
  6. break;
  7. case ($nom_de_famille) == "xxxx":
  8. echo "la valeur est  "xxxxx";
  9. break;
  10. }
  11. ?>


 
Je tiens à prévenir que je suis débutant tout du moins en PHP, donc voilà, si vous pouviez le donner des orientation et m'expliquer pourquoi, il s'arrete à la première conditions ça serait bien !
 
merci
@+
cvb
 
 :hello:


Message édité par cvb le 20-12-2003 à 11:38:06
Reply

Marsh Posté le 20-12-2003 à 11:37:39   

Reply

Marsh Posté le 20-12-2003 à 11:42:54    


  echo "<br>$nom_de_famille<br>";
   
  switch (trim($nom_de_famille))
  {
     
    case ($nom_de_famille)=="":
     echo "la valeur est nulle";
     break;
    case ($nom_de_famille) == "xxxx":
     echo "la valeur est  "xxxxx";
     break;  
  }

Reply

Marsh Posté le 20-12-2003 à 11:43:43    

et je comprend pas bien pourquoi tu met un trim dans le switch et pas ailleur.
Du mal a comprendre ton switch mé bon ca doit etre l'effet samedi matin [:dawa]

Reply

Marsh Posté le 20-12-2003 à 11:50:21    

chacal_one333 a écrit :


  echo "<br>$nom_de_famille<br>";
   
  switch (trim($nom_de_famille))
  {
     
    case ($nom_de_famille)=="":
     echo "la valeur est nulle";
     break;
    case ($nom_de_famille) == "xxxx":
     echo "la valeur est  "xxxxx";
     break;  
  }


 
Quand je mets rien dans le champs de saisie, il me sort "la valeur est "xxxxx". Il n'y a pas moyen de savoir si le champs est vide  !  
 
:??:  
 
 
il m'affiche uniquement "la valeur est nulle" quand je mets un chiffre  [:gratgrat]  
 
 
concernant le trim, s'il faut le mettre allieur je veux bien le mettre, mais comme je disais je débute en php ! ;)


Message édité par cvb le 20-12-2003 à 11:55:29
Reply

Marsh Posté le 20-12-2003 à 11:55:32    

chacal_one333 a écrit :


  echo "<br>$nom_de_famille<br>";
   
  switch (trim($nom_de_famille))
  {
     
    case ($nom_de_famille)=="":
     echo "la valeur est nulle";
     break;
    case ($nom_de_famille) == "xxxx":
     echo "la valeur est  "xxxxx";
     break;  
  }


 
heu ça serait pas plutôt  
 
 switch (trim($nom_de_famille))
  {
     
    case "":
     echo "la valeur est nulle";
     break;
    case "xxxx":
     echo "la valeur est  "xxxxx";
     break;  
  }
 
?


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 20-12-2003 à 11:56:15    

cvb a écrit :


 
Quand je mets rien dans le champs de saisie, il me sort "la valeur est "xxxxx". Il n'y a pas moyen de savoir si le champs est vide  !  
 


 
if($lechamp == "" )
{
  echo "il est vide";
}
 
je vois pas trop pourquoi t'as besoin d'un switch dans ce cas-ci :??:


Message édité par antp le 20-12-2003 à 11:56:45

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 20-12-2003 à 12:00:11    

antp a écrit :


 
heu ça serait pas plutôt  
 
 switch (trim($nom_de_famille))
  {
     
    case "":
     echo "la valeur est nulle";
     break;
    case "xxxx":
     echo "la valeur est  "xxxxx";
     break;  
  }
 
?


 
c'est bien ça ! merci Antp ! j'avais presque fait ça tout à l'heure : j'avais écrit case $nom_de_famille = ""
 
merci à tous les deux ! http://forum.hardware.fr/icones/icon10.gif
 :hello:

Reply

Marsh Posté le 20-12-2003 à 12:01:47    

antp a écrit :


 
if($lechamp == "" )
{
  echo "il est vide";
}
 
je vois pas trop pourquoi t'as besoin d'un switch dans ce cas-ci :??:


 
je fais des exercices. Je suis entrain de tester la fonction, savoir comment elle réagit en php ! Il est possible que j'ai besoin de cet exemple un jour...:) sinon, oui, si j'avais pas voulu me faire ch**** depuis deux heures, j'aurais mis des if... :D

Reply

Marsh Posté le 20-12-2003 à 12:01:58    

la honte a moi, j'avait pas vu ca [:dawa]

Reply

Sujets relatifs:

Leave a Replay

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