PHP : Boucle while

Eléphanteau du PHP | 13 Messages

27 oct. 2008, 15:46

Bonjour,

J'ai un petit souci de code !

J'aimerais récupérer dans une seule variable la concaténation d'un boucle while comme ceci :

Code : Tout sélectionner

$valeur= odbc_exec( $cnx, "SELECT * FROM T_commune "); while($val=odbc_fetch_row($valeur)){ $commune = odbc_result( $valeur, 1 ); }
While ($commune >0){
$t=$commune;
}



Ainsi si j'ai 3 communes, j'aimerais récupérer dans une variable $t = commune1; commune2; commune3

Est-ce possible ?et si oui comment ?

Merci pour votre aide !

Mafalda

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

27 oct. 2008, 16:06

Je crois que tu peux te contenter d'un if($commune !== "") si c'est du texte dans ta base de données.

Sinon, pour concaténer (coller) deux chaînes de caractères, c'est le point (.) qu'on utilise en PHP.
while($val=odbc_fetch_row($valeur))
{ 
    //si tu as besoin des communes séparément
    $commune1 = odbc_result( $valeur, 1 );
    $commune2 = odbc_result( $valeur, 2 ); 
    $commune3 = odbc_result( $valeur, 3 ); 
    $t = $commune1  .";".  $commune2 .";". $commune3 ; 

// si tu as juste besoin de $t
        $t = odbc_result( $valeur, 1 )  .";".  odbc_result( $valeur, 2 ) .";". odbc_result( $valeur, 3 ) ; 
}
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

27 oct. 2008, 16:08

Bonjour,

Voici une solution:
$t=""; // On initialise $t

$valeur= odbc_exec( $cnx, "SELECT * FROM T_commune ");
while($val=odbc_fetch_row($valeur)){
     $commune = odbc_result( $valeur, 1 );
     $t.=$commune."; ";
} 
J'utilise l'opérateur ".=" qui permet d'ajouter à la fin de la chaîne $t, la commune suivi d'un point-virgule.
Quand tout le reste a échoué, lisez le mode d'emploi...

Eléphanteau du PHP | 13 Messages

27 oct. 2008, 16:12

Pardon je me suis mal exprimée,
mais mes noms de communes sont situés dans un seul champ ...

J'aimerais les concaténer dans une seule variable !

Merci

:?

[EDIT] MERCI ! Je ne connaissais pas ce symbole ! C'est chouette ! Ca fonctionne !

Modérateur PHPfrance
Modérateur PHPfrance | 6037 Messages

27 oct. 2008, 16:27

Ah en ce cas : c'est @rthur qu'il faut écouter, et ne fais pas de SELECT *, mais plutôt SELECT commune
Règle n°2 du webmaster : Toujours commencer par le HTML qu'on veut obtenir....toujours ! :priere:
J'aime apprendre de nouvelles choses.