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 :

Problème sur les Variables Variables [PHP 5.2]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut Problème sur les Variables Variables
    Bonjour,
    J'ai besoin de faire une boucle FOR dans laquelle j'ai des noms de variables qui évoluent en fonction du compteur. Mais je me heurte à un problème de syntaxe : voici mon code ;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    //----------------------------------------------
     
    	  echo 'arrHotel[0] = new Array('."\n";
     
    	  for($i=0;$i<$_countArrProduct1;$i++){
    	    if ($i != ($_countArrProduct1-1)){
    	      	echo '"'.$_arrProducts1[$i]['champ1'].$separateur.
    		    	 $_arrProducts1[$i]['champ2'].$separateur.
    		    	 $_arrProducts1[$i]['champ3'].$separateur.'"'.
    		    	 ','.
    		    	 "\n";
    	    } else {
    	    	echo '"'.$_arrProducts1[$i]['champ1'].$separateur.
    		    	 $_arrProducts1[$i]['champ2'].$separateur.
    		    	 $_arrProducts1[$i]['champ3'].$separateur.'"'.
    	    	 "\n";
    	    }
    	  }
     
    	  echo ');'."\n"."\n"."\n";
    	  echo 'console.log("Valeur1", arrHotel[0]);';
     
    	  //------------------------------------------------
     
    	  echo 'arrHotel[1] = new Array('."\n";
     
    	  for($i=0;$i<$_countArrProduct2;$i++){
    	    if ($i != ($_countArrProduct2-1)){
    	      	echo '"'.$_arrProducts2[$i]['champ1'].$separateur.
    		    	 $_arrProducts2[$i]['champ2'].$separateur.
    		    	 $_arrProducts2[$i]['champ3'].$separateur.'"'.
    		    	 ','.
    		    	 "\n";
    	    } else {
    	    	echo '"'.$_arrProducts2[$i]['champ1'].$separateur.
    		    	 $_arrProducts2[$i]['champ2'].$separateur.
    		    	 $_arrProducts2[$i]['champ3'].$separateur.'"'.
    	    	 "\n";
    	    }
    	  }
     
    	  echo ');'."\n"."\n"."\n";
    	  echo 'console.log("Valeur2", arrHotel[1]);';
     
    	  //------------------------------------------------
    ETC......
    J'aimerai faire une boucle FOR pour encapsuler tout ça, mais je me heure à des problèmes de noms de variables, notamment pour mes Array.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    //------------------------------------------------------
    	  for ($j=0;$j<7;$j++) {
     
    		  echo 'arrHotel['.($j+1).'] = new Array('."\n";
     
    		  for($i=0;$i<$_countArrProduct.($j+1);$i++){
    			if ($i != ($_countArrProduct($j+1)-1)){
    				echo '"'.$_arrProducts($j+1)[$i]['champ1'].$separateur.
    					 $_arrProducts($j+1)[$i]['champ2'].$separateur.
    					 $_arrProducts($j+1)[$i]['champ3'].$separateur.'"'.
    					 ','.
    					 "\n";
    			} else {
    				echo '"'.$_arrProducts($j+1)[$i]['champ1'].$separateur.
    					 $_arrProducts($j+1)[$i]['champ2'].$separateur.
    					 $_arrProducts($j+1)[$i]['champ3'].$separateur.'"'.
    				 "\n";
    			}
    		  }
     
    		  echo ');'."\n"."\n"."\n";
    		  echo 'console.log("Valeur($j+1)", arrHotel['.$j.']);';
    	  }
    	  //----------------------------------------------------
    D'avance, merci pour votre aide.

  2. #2
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Hello

    Cette syntaxe n'existe pas en PHP pour le moment:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $_arrProducts($j+1)[$i]
    tu dois faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $a = $_arrProducts($j+1);
    $a[$i];

  3. #3
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut
    Merci Benjamin pour ta réponse, je galère vraiment sur ce bout de script, je vais le tester, je te tiens au courant

  4. #4
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut Dans une boucle
    Si je suis dans une boucle, puis je faire un ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for($j=1;$j<=8;$j++){
    	$nomArray = '_arrProducts'.$j;
    	$$nomArray = array();
    }
    en sachant que je veux obtenir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $_arrProducts1 = $_arrProducts2 = ... = $_arrProducts8 = array();

  5. #5
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    Bonjour,

    Je pense que la fonction eval() t'aiderais bien...

  6. #6
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    ska_root, je peux pas supporter les eval !!!

    C'est tout à fait correct comme tu as fait.
    Regarde cet exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    echo "<pre>";
    $var1 = 1;
    $var2 = 2;
    $var3 = "toto à vélo";
    $a = "var";
    for ($i=1; $i<=3; $i++)
    {
       $a = "var$i";
       echo "$a => " . $$a . "\n";
       $$a = "hello";
    }
    echo '$var1 => ' . $var1 . "\n";
    echo '$var2 => ' . $var2 . "\n";
    echo '$var3 => ' . $var3 . "\n";
    echo "</pre>";
    Produit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    var1 => 1
    var2 => 2
    var3 => toto à vélo
    $var1 => hello
    $var2 => hello
    $var3 => hello

  7. #7
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut
    Merci Benjamin, je teste de suite, quand je fais ces boucles, j'ai des erreurs, je continue à creuser, je vous tiens au courant.

  8. #8
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    On va d'ailleurs s'amuser un peu, l'exemple qui suit montre les possibilités de PHP 5.3:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    echo "<pre>";
    $var1 = 0; $var2 = 1; $var3 = 2;
    $_v = function ($v) {return isset($v) ? $v : false;};
    $_i = 1;
    while (($_a="var{$_v($_i++)}") && isset($$_a))
      echo "$_a => {$$_a}\n";
    echo "</pre>";
    Dans le genre "syntaxe incompréhensible" ça se pose là non ?

    Produit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    var1 => 0
    var2 => 1
    var3 => 2

  9. #9
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut Erreur
    Merci pour vos réponses, j'ai loupé quelque chose ?
    je n'ai pas réussi à faire ce que je veux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    //Affectation des listes
    for($j=1;$j<=8;$j++){
    	$_collection = '_collection'.$j;
    	foreach ($$_collection as $_product){
    		$nomArray = 'result'.$j;
    		${$nomArray} = $_product->getId();
    	}
    }
    ERREUR =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: Invalid argument supplied for foreach()

  10. #10
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Etrange, chez moi ce code marche:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $_collection1 = array(1,2,3);
    $_collection2 = array(1,2,3);
    $_collection3 = array(1,2,3);
     
    for($j=1;$j<=3;$j++){
    	$_collection = "_collection$j";
    	foreach ($$_collection as $_product){
                   echo "$_collection > $_product";
            }
    }
    Tu es sûr que tes collections sont bien des traversables (ou de tableaux) ?

  11. #11
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut
    Oui quand je fais ça, j'ai pas d'erreur, mais bon c'est super moche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    //Affectation des listes
    foreach ($_collection1 as $_product){
    	$result1[] = $_product->getId();
    }
     
    foreach ($_collection2 as $_product){
    	$result2[] = $_product->getId();
    }
     
    foreach ($_collection3 as $_product){
    	$result3[] = $_product->getId();
    }
     
    foreach ($_collection4 as $_product){
    	$result4[] = $_product->getId();
    }
     
    foreach ($_collection5 as $_product){
    	$result5[] = $_product->getId();
    }
     
    foreach ($_collection6 as $_product){
    	$result6[] = $_product->getId();
    }
     
    foreach ($_collection7 as $_product){
    	$result7[] = $_product->getId();
    }
     
    foreach ($_collection8 as $_product){
    	$result8[] = $_product->getId();
    }
    En sachant que chaque $_collection produit une liste différente.

  12. #12
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Remarque c'est marrant que tu aies pas un tableau bidimentionnel...

    Tu ferais juste:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    foreach ($_collections as $_collection)
    {
        foreach ($_collection as $key => $value)
        {
              // ...
        }
    }

  13. #13
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut
    Je suis pas sûr que le tableau bidimensionnel soit la solution, ou alors je n'ai pas compris où tu veux en venir.

    j'ai besoin de construire 8 listes différentes.
    Chaque liste comporte une collection d'objets indépendants. Je voulais juste utiliser les variables variables pour me simplifier l'écriture de mon code.

    Je voulais juste trouver un moyen astucieux d'écrire mes 8 mini traitements en très peu de lignes.

  14. #14
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    je ne suis pas sur de comprendre ce que tu veux faire, mais peut-être cet exemple t'aidera...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    <?php
     
    // de 1 a 8 fois
    for($i=1; $i<=8; $i++) {
     
    	// chaque _collection est un array
    	$col= "_collection$i";
    	${$col}=array();
     
    	// on alloue les valeurs (ici des valeurs identiques 1,2 et 3 préfixées par $i pour mieux les différencier plus loin dans la vérification)
    	for($j=1; $j<=3; $j++) {
    		${$col}['champ'.$j]= $i."-".$j; 
    	}
     
    }
     
     
    /* VERIFICATION */
     
    echo "<h1>Dynamique</h1>";
     
    // affichage des collections de manière dynamique
    for($i=1; $i<=8; $i++) {
    	$col= "_collection$i";
     
    	echo "<h3>[\$_collection$i]</h3><pre>";
    	if(isset(${$col})) print_r(${$col});
    	echo "</pre><hr/>";
     
    }
     
    echo "<h1>Statique</h1>";
     
    // affichage d'une collection de manière statique
    echo "<h3>[\$_collection8]</h3><pre>";
    	if(isset($_collection8)) print_r($_collection8);
    echo "</pre><hr/>";
    ?>


  15. #15
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut
    Merci ska_root, j'ai essayé d'utiliser ta technique en allant un peu plus loin dans mon traitement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    <script type="text/javascript">
    <?php 
    	  $separateur = "|";
    	  // de 1 a $_nbItems fois
    	  for($j=1; $j<=$_nbItems; $j++) {
    	 //----------- Une boucle --------------------
    	  $_hotels = "arrHotel$j";
    	  $_produits = "_arrProducts$j";
    	  $_compteur = "_countArrProduct$j";
     
    	  echo '${$_hotels}[$j] = new Array('."\n";
     
    	  for($i=0;$i<${$_compteur};$i++){
    	    if ($i != (${$_compteur}-1)){
    	      	echo '"'.${$_produits}[$i]['availpro_id'].$separateur.
    		    	 ${$_produits}[$i]['name'].$separateur.
    		    	 Hgp_Lib_Tools::drawStarsHomeTxt(${$_produits}[$i]['nb_etoile']).'"'.
    		    	 ','.
    		    	 "\n";
    	    } else {
    	    	echo '"'.${$_produits}[$i]['availpro_id'].$separateur.
    		    	 ${$_produits}[$i]['name'].$separateur.
    		    	 Hgp_Lib_Tools::drawStarsHomeTxt(${$_produits}[$i]['nb_etoile']).'"'.
    	    	 "\n";
    	    }
    	  }
     
    	  echo ');'."\n"."\n"."\n";
    	  echo 'console.log("Valeur$j", ${$_hotels});';
    	//----------- Une boucle --------------------
    	}
    ?>
    </script>
    Résultat :
    ${$_hotels}[$j] = new Array(
    );

    console.log("Valeur$j", ${$_hotels});${$_hotels}[$j] = new Array(
    );

    console.log("Valeur$j", ${$_hotels});${$_hotels}[$j] = new Array(
    );

    console.log("Valeur$j", ${$_hotels});${$_hotels}[$j] = new Array(
    );

    console.log("Valeur$j", ${$_hotels});${$_hotels}[$j] = new Array(
    );

    console.log("Valeur$j", ${$_hotels});${$_hotels}[$j] = new Array(
    );

    console.log("Valeur$j", ${$_hotels});${$_hotels}[$j] = new Array(
    );

    console.log("Valeur$j", ${$_hotels});${$_hotels}[$j] = new Array(
    );
    Au lieu d'avoir du JS j'ai rien

  16. #16
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    ça ne serait pas plutôt ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    <script type="text/javascript">
    <?php 
     
    	  $separateur = "|";
     
    	  // de 1 a $_nbItems fois
    	  for($j=1; $j<=$_nbItems; $j++) {
     
       	  //----------- Une boucle --------------------
       	  $_hotels =   "arrHotel$j";
       	  $_produits = "_arrProducts$j";
       	  $_compteur = "_countArrProduct$j";
     
    	     echo "_hotels[$j] = new Array(\n";
     
            $nb_compteur= count(${$_compteur});
     
    	     for($i=0; $i < $nb_compteur; $i++){
     
    	        if ($i != $nb_compteur) {
     
    	           echo "'".${$_produits}[$i]['availpro_id'].$separateur.
    		    	  ${$_produits}[$i]['name'].$separateur.
    		    	  Hgp_Lib_Tools::drawStarsHomeTxt(${$_produits}[$i]['nb_etoile'])."'".
    		    	  ",".
    		    	  "\n";
     
    	        } else {
     
    	    	     echo "'".${$_produits}[$i]['availpro_id'].$separateur.
    		    	  ${$_produits}[$i]['name'].$separateur.
    		    	  Hgp_Lib_Tools::drawStarsHomeTxt(${$_produits}[$i]['nb_etoile'])."'".
    	    	     "\n";
    	       }
    	   }
     
    	   echo ");\n\n\n";
     
    	   echo "console.log('Valeur$j', _hotels[$j]);";
     
    	//----------- Une boucle --------------------
    	}
    ?>
    </script>

  17. #17
    Membre régulier
    Homme Profil pro
    Ingénieur d'études en développements techniques
    Inscrit en
    Novembre 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'études en développements techniques
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 244
    Points : 117
    Points
    117
    Par défaut Merci bcp ska_root
    Merci ska_root :
    Ta réponse m'a énormément aidé : alors pour ceux que ça intéresse :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    <script type="text/javascript">
    <?php 
    	  $separateur = "|";
     
    	  // Traitement par iterations de nbItems
    	  for($j=1;$j<=$nbItems;$j++){
     
    	  	$k = $j-1;
    	  	$_hotels   = "arrHotel[$k]";
    	   	$_produits = "_arrProducts$j";
    	    $_compteur = "_countArrProduct$j";
     
    	  //------------------------------------------------------------------
    	  echo $_hotels . ' = new Array('."\n";     
     
    	  for($i=0;$i<${$_compteur};$i++){
     
    	  	if ($i != (${$_compteur}-1)){
    	      	echo '"'.${$_produits}[$i]['availpro_id'].$separateur.
    	  				 ${$_produits}[$i]['name'].$separateur.
    		    	 	 Hgp_Lib_Tools::drawStarsHomeTxt(${$_produits}[$i]['nb_etoile']).'"'.','."\n";
    	    } else {
    	    	echo '"'.${$_produits}[$i]['availpro_id'].$separateur.
    	    			 ${$_produits}[$i]['name'].$separateur.
    		    	     Hgp_Lib_Tools::drawStarsHomeTxt(${$_produits}[$i]['nb_etoile']).'"'."\n";
    	    }
    	  }
     
    	  echo ");\n\n";
    	  echo 'console.log("Valeur'.$j.'", '.$_hotels.');'."\n\n";
    	  }  
     
    ?>
    </script>

  18. #18
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    pourquoi t'utilises pas le JSON c'est fait pour

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

Discussions similaires

  1. Problème sur les variables
    Par ayms75 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 04/11/2014, 19h30
  2. [XL-2010] Problème sur les critères de filtre avec une variable dans Array
    Par badege3378 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/08/2014, 11h36
  3. Réponses: 3
    Dernier message: 23/08/2007, 00h39
  4. Problème sur les variables de class
    Par nico_pouchet dans le forum VB.NET
    Réponses: 6
    Dernier message: 11/06/2007, 16h51
  5. sur les super variables de Session
    Par riesseg dans le forum Langage
    Réponses: 4
    Dernier message: 31/05/2006, 15h58

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