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 :

Passage de variable incrementé


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 12
    Par défaut Passage de variable incrementé
    Bonjour,

    J'ai un petit probleme, j'ai un formulaire qui envoi un certain nombre de variable sous la forme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<input name=\"dos_$i\" type='hidden' value=$row[0]>";
    une fois que je clique sur le bouton pour envoyer le formulaire a la page de traitement tout ce passe bien c a partir de la que le probleme se pose.

    je veux recuperer mes variables mais je n'arrive pas.

    les variables sont creer dans une boucle while. Si j'affiche mes variables en les nommant par le nom (ex : $dos_1 ... $dos_10) it's ok mais sa fais beaucoup ligne si les tape une par une donc je mets une boucle en place mais je n'arrive pas a afficher ma variable correctement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for($j=0;$j<=$nb;$j++) {
    echo "$dos_$i"; //marche pas
    }
    en gros mon probleme c d'avoir $dos_1 mais en coddant un truc du genre $dos_$i

    merci d'avance
    @+

  2. #2
    Membre Expert
    Inscrit en
    Juillet 2004
    Messages
    1 027
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 1 027
    Par défaut
    Salut,

    pour ré afficher tes variables il faudrait le faire ainsi.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for($j=0;$j<=$nb;$j++) { 
    $varnom = "dos_".$j;
    echo $$varnom;
    }
    tu noteras le $$varnom.

    Ceci dit ta méthode me semble incorrect dès le départ.

    En effet dans ces situation la il est plus si,ple de créer un tableau qui sera ré interprété et pret à l'emploi dans php.

    Pour faire cela il faut remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo "<input name=\"dos_$i\" type='hidden' value=$row[0]>";
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    [code]echo "<input name=\"dos[$i]\" type='hidden' value=$row[0]>";[/code]
    tu noteras ici la syntaxe dos[$i], qui à l'affichage nous donneras
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <input name="dos[0]" type='hidden' value="qdqsdq">
    <input name="dos[1]" type='hidden' value="qdqsdq">
    <input name="dos[2]" type='hidden' value="qdqsdq">
    Il est très important de ne pas utiliser les guillements pour nommer les clefs de ton tableau cf dos[0] et non dos['0'].

    Dans le retour PHP tu n'auras plus qu'à appeler ton tableau ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $_POST["dos"];
    // ou
    $_GET["dos"];
    Selon la méthode de transmission des variables que tu as choisi, je te conseil fortement le POST.

    Je rajouterais une dernière chose, mets des guilemets pour encadrer tes valeurs dans ton post.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo "<input name=\"dos[".$i."]\" type='hidden' value=\"".$row[0]."\">";
    Enfin une autre syntaxe possible à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo "<input name=\"dos[".$i."]\" type='hidden' value=\"".$row[0]."\">";
    Serait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo "<input name=\"dos[]\" type='hidden' value=\"".$row[0]."\">";
    Voila bye !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/02/2008, 20h31
  2. Passage de variable dans un lien asp
    Par VirginieGE dans le forum ASP
    Réponses: 4
    Dernier message: 27/07/2004, 11h06
  3. [Kylix] passage de variable en Libc
    Par zheng dans le forum EDI
    Réponses: 11
    Dernier message: 06/05/2004, 15h14
  4. Passage de variable par methode post ?
    Par oazar dans le forum Flash
    Réponses: 33
    Dernier message: 16/10/2003, 18h03
  5. [langage] Passage de variables...
    Par martijan dans le forum Langage
    Réponses: 8
    Dernier message: 30/07/2003, 10h48

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