Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1004 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Variables dynamique

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Variables dynamique

n°1983964
zezette
"Allez hop, au revoir"
Posté le 14-04-2010 à 15:22:10  profilanswer
 

Bonsoir à tous,
 
J'ai un petit souci avec l'usage de variables "dynamiques" :
 

Code :
  1. $nom1="Marcel";
  2. $nom2="Yvan";
  3. for($i=1;$i<=2;$i++)
  4. {
  5.   echo $nom{$i};
  6. }


 
Ca m'affiche om (les caractères 1 et 2 de nom)
 
Je voudrais que ça m'affiche MarcelYvan... où est l'erreur ?
 
 
---edit--
 
En fait fallait faire

Code :
  1. echo ${"nom".$i};
  2. //ou
  3. echo ${"nom$i"};

Message cité 1 fois
Message édité par zezette le 14-04-2010 à 15:36:22

---------------
"Par moment j'me d'mande si chui pas con" G. de Suresnes
mood
Publicité
Posté le 14-04-2010 à 15:22:10  profilanswer
 

n°1984039
Tirkyth
Posté le 14-04-2010 à 18:36:14  profilanswer
 

Oui, ou sinon je te recommande tout simplement de ne jamais utiliser ça  :lol:

n°1984156
antac
..
Posté le 15-04-2010 à 09:34:15  profilanswer
 

zezette a écrit :

Bonsoir à tous,
 
J'ai un petit souci avec l'usage de variables "dynamiques" :
 

Code :
  1. $nom1="Marcel";
  2. $nom2="Yvan";
  3. for($i=1;$i<=2;$i++)
  4. {
  5.   echo $nom{$i};
  6. }


 
Ca m'affiche om (les caractères 1 et 2 de nom)
 
Je voudrais que ça m'affiche MarcelYvan... où est l'erreur ?
 
 
 
---edit--
 
En fait fallait faire

Code :
  1. echo ${"nom".$i};
  2. //ou
  3. echo ${"nom$i"};



Code :
  1. $nom1="Marcel";
  2. $nom2="Yvan";
  3. for($i=1;$i<=2;$i++)
  4. {
  5.    $var=$nom.$i
  6.    echo $$var;
  7. }


 
Mais bon, c'est pas conseillé


Message édité par antac le 15-04-2010 à 09:34:57
n°1984267
the_bigboo
Posté le 15-04-2010 à 11:54:38  profilanswer
 

Moi je ferais plutôt :

Code :
  1. $noms = array("Marcel","Yvan" );
  2. foreach ($noms as $nom){
  3.     echo $nom ;
  4. }

n°1984268
flo850
moi je
Posté le 15-04-2010 à 11:55:39  profilanswer
 

utilise un tableau plutôt ,ce sera plus propre et plus pratique

n°1984302
rufo
Pas me confondre avec Lycos!
Posté le 15-04-2010 à 13:30:56  profilanswer
 

+1 pour le tableau. Les variables dynamiques sont à éviter, y'a que qq cas particuliers où ça peut être utile.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°1984319
zezette
&#034;Allez hop, au revoir&#034;
Posté le 15-04-2010 à 14:12:10  profilanswer
 

ouais, évidemment, mais je dois récuperer un formulaire qui a été fait par qqn d'autre... et vu la taille du formulaire, j'avais pas envie de le refaire... alors j'ai fait un for qui me tape tout dans un tableau (pour que ce soit propre après) ;)


---------------
"Par moment j'me d'mande si chui pas con" G. de Suresnes
n°1984322
flo850
moi je
Posté le 15-04-2010 à 14:13:28  profilanswer
 

tu as le droit de peter les genoux de celui qui a crée le formulaire :d

n°1984326
rufo
Pas me confondre avec Lycos!
Posté le 15-04-2010 à 14:16:31  profilanswer
 

pour rappel, tu peux faire ça :

Code :
  1. foreach($_POST as $Key => FieldValue)
  2. {
  3.     switch($Key)
  4.     {
  5.          case 'nomchamp1':
  6.              // traitement spécifique pour ce champ
  7.              break;
  8.          ...
  9.          default:
  10.              // traitement classique pour les autres champs
  11.              break;
  12.     }
  13. }


Message édité par rufo le 15-04-2010 à 14:17:30

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°1984785
Fred999
Rabat-joie
Posté le 16-04-2010 à 12:22:38  profilanswer
 

C'est pas plutôt switch($FieldValue) ?

mood
Publicité
Posté le 16-04-2010 à 12:22:38  profilanswer
 

n°1984835
rufo
Pas me confondre avec Lycos!
Posté le 16-04-2010 à 13:51:23  profilanswer
 

Fred999 a écrit :

C'est pas plutôt switch($FieldValue) ?


 
Ben non, $Key contient le nom du champ du formulaire et $FieldValue sa valeur. Si y'a besoin de faire un traitement particulier pour certains champs du formulaire, faut bien filtrer sur le nom du champ et pas la valeur. Ex : on traite généralement pas de la même manière un champ de type select qu'un input type text. Ou plus parlant, un champ input type text est traité différemment d'un champ input type file ;)


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°1984836
Fred999
Rabat-joie
Posté le 16-04-2010 à 13:52:45  profilanswer
 

Ah pardon, j'ai trop l'habitude de l'utiliser comme ça :o
 
My mistake.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Variables dynamique

 

Sujets relatifs
Faire un tableau en parsant des chaines issues de pages HTML dynamiqueportée des variables
Carte dynamique ( clip dans clip )Apparition d'élément de menu déroulant dynamique
[JSF] Navigation dynamiqueExtrusion dynamique selon un texte FLASH CS4
ajout dynamique de variables dans un objetvariables dynamique
[Java]Declarer des variables de maniere dynamique?Gestion de nom de variables dynamique (rapide... help)
Plus de sujets relatifs à : Variables dynamique


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR