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 :

[PHP-JS] créer une variable dynamique de type : $."variable_$i"


Sujet :

Langage PHP

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 100
    Par défaut [PHP-JS] créer une variable dynamique de type : $."variable_$i"
    bonjour

    voila mojn code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for($i=0;$i<10;$i++)
    { 
    	if (isset($_POST["thermique_$i"])) {$_SESSION["thermique_$i"]=$_POST["thermique_$i"]; $"thermique_$i"=$_POST["thermique_$i"];}
    }

    le probleme vien de $"thermique_$i". je cherche à mettre mes variables $thermique_1 à $thermique_9 que j'ai poster (d'ou le POST) dans les variables de la page

    comment est ce que je pourrais faire ? (le code que je donne marche évidemment pas !)

    merci

  2. #2
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Je pense que ca, ca fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_POST['thermique'.$i];

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 100
    Par défaut
    merci koopajah mais mon POST fonction (tou comme mon SESSION)
    la premeire partie dans le if est OK.
    la seconde pose probleme ...
    c'est $"thermique_$i" qui m'embete, je veux obtenir des $thermique_1= ...
    en faite je veux mettre la variable $i dans la variable $thermique_ ...

    tu voix ce que je veux faire ?

  4. #4
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut
    Salut

    Essais ça, mais je suis pas tout à fait sûr
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $thermique_.$i=$_POST["thermique_$i"]

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 100
    Par défaut
    le mettre ne deux moceaux comme ca ca iarais pour de l'affichage ...
    mais pour affecter une valeur a une variable ... c pas si simple !!!
    ca ne marche malheureusement pas

  6. #6
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut
    Bon en faite, il faut utiliser le $$

    pour affecter une valeur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $var = "thermique_$i";
    $$var = $_POST["thermique_$i"];
    et si tu veux l'afficher :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $var = "thermique_$i";
    echo $$var;

  7. #7
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 100
    Par défaut
    le faire en deux étapes quoi ...
    ok je teste ca et te dit si ca marche
    encore merci !!

  8. #8
    Membre confirmé
    Inscrit en
    Avril 2007
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 100
    Par défaut
    bon j'ai tester comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    for($i=0;$i<"$nb_thermiques";$i++)
    		{			
    			$tmp = "thermique_$i"; 
    			$thermique="$$tmp";
    			if(isset($thermique)) {echo "<input name='thermique_$i' type='text' class='formulaire' value='$thermique' id='thermique_$i' >";}
    			else {echo "<input name='rapide_$i' type='text' class='formulaire' id='rapide_$i' >";}		
    		}
    $thermique contient bien "$thermique_1", "$thermique_1", ...
    le probleme c'est qu'il contient la valeur $thermique_1, et non la varible

    ce qui fait que quand je fait : echo "$thermique_1"; il m'affiche $thermique_1 et non la valeur que j'ai rentrée ...

    ca doit bien etre possible à récup quand meme

  9. #9
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut
    Euh... si tu fais
    c'est normal qu'il t'affiche $thermique_1
    C'est sans les guillemets
    Idem dans le for $nb_thermique dans les guillemets.
    Si tu met des guillemets c'est comme si tu lui disais que c'était une chaine donc quand tu met $var = "$var2"

    puis echo $var tu aura quand même $var2 à l'écran car c'est la chaine que tu as mis dans la variable

Discussions similaires

  1. Comment créer une variable dynamique en js?
    Par L0101SA dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 18/01/2011, 19h49
  2. Créer une variable globale de type tableau
    Par beegees dans le forum Langage
    Réponses: 1
    Dernier message: 27/10/2008, 00h26
  3. [Tableaux] Une variable dynamique de type tableau
    Par martin__ dans le forum Langage
    Réponses: 3
    Dernier message: 02/08/2007, 19h22
  4. Ajout d'une variable dynamique de type pointeur
    Par mmooaa dans le forum Langage
    Réponses: 3
    Dernier message: 02/01/2007, 23h04
  5. Réponses: 3
    Dernier message: 11/08/2006, 09h41

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