boucles PHP

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

phenol
Nouveau WRInaute
 
Messages: 4
Inscription: Mar Juin 07, 2005 19:24

boucles PHP

Message le Mar Juin 07, 2005 19:29

Bonjour a tous,

je commence juste en php et j'ai un petit probleme,
J'ai une table dont les colonnes sont nommées P1, P2 ,P3 .... P100.
Je voudrais affiche un ligne particulier avec une boucle qui incremente sur le numero des colonnes

Je n'y arrive pas, je pense que le probleme vient de ma maniere d' ecrire les nom des colonnes avec l'increment.

Pourriez vous de dire si vous savez comment faire?

merci beaucoup d'avance


web-soluces.net
WRInaute impliqué
WRInaute impliqué
 
Messages: 286
Inscription: Dim Juin 01, 2003 6:22

Message le Mar Juin 07, 2005 19:33

$i='0';
$i++;

Echo $i;


Commande while

phenol
Nouveau WRInaute
 
Messages: 4
Inscription: Mar Juin 07, 2005 19:24

Message le Mar Juin 07, 2005 20:06

Merci pour ta reponse

Mon probleme est d 'arrive a faire comprendre au programme que $P.$i est le nom de la i eme colonne Pi

a tu une idee?

kali_
WRInaute discret
WRInaute discret
 
Messages: 69
Inscription: Lun Juin 06, 2005 15:14

Message le Mar Juin 07, 2005 21:20

www.nexen.net pour les aides sur le php.

pour consulter la valeur d'un tableau en php, le nom du tableau est ici : tab ca donne :

Code: Tout sélectionner
$tab[0] = "valeur1";
$tab[1] = "valeur2";


apres avec ta boucle qui fait varier $i ca donne :

Code: Tout sélectionner
$resultat = $tab[$i];



Kali_

mublog
Nouveau WRInaute
 
Messages: 13
Inscription: Lun Juin 06, 2005 13:36

Message le Mar Juin 07, 2005 21:41

Il faut utiliser les variables dynamiques :
$colonne = 'P'.$i++;
et tu récupéres ta valeur avec $table[$$colonne] (oui, y'a bien 2 &)


MarvinLeRouge
WRInaute impliqué
WRInaute impliqué
 
Messages: 451
Inscription: Mer Sep 01, 2004 20:10

Message le Mar Juin 07, 2005 22:02

mublog a écrit:Il faut utiliser les variables dynamiques :
$colonne = 'P'.$i++;
et tu récupéres ta valeur avec $table[$$colonne] (oui, y'a bien 2 &)


Non, mais y'a bien 2 $ :roll:


Genzo
WRInaute passionné
WRInaute passionné
 
Messages: 982
Inscription: Ven Juin 18, 2004 13:03

Message le Mar Juin 07, 2005 22:21

Il y a plusieurs methodes pour faire ça vu qu'il y a au moins une ligne au tableau.
J'en connais 3 :
- boucle POUR (minimum un passage)
- boucle REPETER ... JUSQU'A (minimum un passage)
- TANTQUE ... FIN TANTQUE (pas de passage obligatoire)

Je propose donc la boucle POUR, qui est la mieux étudiée vu qu'on connait le nombre de lignes (ici 100).

Code: Tout sélectionner
for ($i = 1; $i <= 100; $i++) {

  echo "Ligne ". $i ." : ". $tableau[$i] . "<br />";

}


Ce n'est pas plus compliqué.

De plus, je conseille fortement de télécharger le manuel officiel PHP en Français au format chm (format aide), bien utile quand on recherche une fonction.


webadev
WRInaute impliqué
WRInaute impliqué
 
Messages: 253
Inscription: Lun Jan 10, 2005 19:21

Message le Mer Juin 08, 2005 2:57

Que veux tu faire exactement ?

Tu veux des variables du type >> $Px >> x etant de 1 à 100 ?
Tu veux placer les valeurs des colones dans variables ?
Tu veux utiliser des tableaux ?


gorgu
WRInaute impliqué
WRInaute impliqué
 
Messages: 347
Inscription: Mer Mar 23, 2005 2:36

Message le Mer Juin 08, 2005 3:25

à prioris c'est une erreur de conception.
il serait bien d'expliquer se que tu cherche a faire.


mowmow
WRInaute passionné
WRInaute passionné
 
Messages: 975
Inscription: Mer Nov 03, 2004 9:40

Message le Mer Juin 08, 2005 6:44

Montre nous ce que tu as déjà fait, ca nous aidera un peu :)

phenol
Nouveau WRInaute
 
Messages: 4
Inscription: Mar Juin 07, 2005 19:24

Message le Mer Juin 08, 2005 9:10

Merci pour vos reponse,

mon code php d origine est du genre:

// Connexion

$result = mysql_query("SELECT * FROM Table");

while($row = mysql_fetch_array($result))
{

for($i = 1; $i <= 100, $i++)
{
echo $row["P" . $i] . "<br>\n";
}

echo "<hr>\n";
}

// Déconnexion

mais il semble que ca ne marche pas parceque "P" .$i il ne le comprend pas comme etant P1, P2, P3 .... le nom que j'ai donne a mes colonnes dans ma Table.


webadev
WRInaute impliqué
WRInaute impliqué
 
Messages: 253
Inscription: Lun Jan 10, 2005 19:21

Message le Mer Juin 08, 2005 10:10

Si ta table a toujours la meme structure exemple:

Colone_A Colone_B Colone_C P1 .... P100

tu peux remplacer :
Code: Tout sélectionner
for($i = 1; $i <= 100, $i++)
{
      echo $row["P" . $i] . "<br>\n";
}


Par

Code: Tout sélectionner
for($i = 3; $i <= 100, $i++)
{
      echo $row[$i] . "<br>\n";
}


Tu n'es pas obligé d'utiliser le nom de ta colone, les indices marchent aussi.

phenol
Nouveau WRInaute
 
Messages: 4
Inscription: Mar Juin 07, 2005 19:24

Message le Mer Juin 08, 2005 13:14

Merci a tous pour votre aide,

J ai reussi avec les variables dynamiques.

merci encore


gorgu
WRInaute impliqué
WRInaute impliqué
 
Messages: 347
Inscription: Mer Mar 23, 2005 2:36

Message le Mer Juin 08, 2005 14:08

reste que c'est une erreur de conception. ;)
pas de clef, pas d'identifiant unique

il vaudrait mieux une table id,p,numero,valeur


Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité