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

PHP & Base de données Discussion :

Récupérer chaque valeur d'un while d'une requête SQL [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 104
    Points : 45
    Points
    45
    Par défaut Récupérer chaque valeur d'un while d'une requête SQL
    Bonjour,

    J'alimente un tableau à partir de requêtes SQL.
    Chaque Colonne est alimentée par une requête SQL.
    Les requêtes étant liées j'ai le même nombre d'informations dans chaque colonne.

    J'aimerais récupérer les informations de chaque colonne ligne par ligne.
    J'ai un lien produit en fin de chaque ligne et un clic dessus transférerait vers une autre page toutes les infos de la ligne.

    Voici le code de mon tableau.

    Code php : 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
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    <table width="690" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td height="25" class="titretableau">Largeur</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Longueur</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Qualité</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Marque Supportée</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Prix</td>
        <td>&nbsp;</td>
    	<td height="25" class="titretableau"></td>
        <td>&nbsp;</td>
      </tr>
      <tr>
          <td height="15" align="center">
    		<div id="laize">
     
    			<?php
     
    			$query_laize = xxx;
    			$result_laize = mysql_query($query_laize, $base) or die(mysql_error());
    			while($val_laize = @mysql_fetch_array($result_laize)){
     
    				echo $val_laize['value'].'<br />';
    			}
     
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" background="img/tableau-separation-noir.png">&nbsp;</td>
        <td height="15" align="center">
    		<div id="longueur">
    			<?php
    			$query_longueur =xxx;
     
     
    			$result_longueur = mysql_query($query_longueur, $base) or die(mysql_error());
    			while($val_longueur = @mysql_fetch_array($result_longueur)){
    			echo $val_longueur['value'].'<br />';
    			}
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" align="center" background="img/tableau-separation-noir.png">&nbsp;</td>
        <td height="15" align="center">
    		<div id="qualite">
    			<?php
    			$query_qualite = xxx;
    			$result_qualite = mysql_query($query_qualite, $base) or die(mysql_error());
    			while($val_qualite = @mysql_fetch_array($result_qualite)){
    			echo utf8_encode($val_qualite['value']).'<br />';
    			}
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" align="center" background="img/tableau-separation-noir.png">&nbsp;</td>
       <td height="15" align="center">
    		<div id="marque">
    			<?php
    			$query_marque =xxx;
    			$result_marque = mysql_query($query_marque, $base) or die(mysql_error());
    			while($val_marque = @mysql_fetch_array($result_marque)){
    			echo utf8_encode($val_marque['name']).'<br />';
    			}
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" align="center" background="img/tableau-separation-noir.png">&nbsp;</td>
        <td height="15" align="center">
    		<div id="prix">
    			<?php
    			$query_qualite = xxx;
    			$result_qualite = mysql_query($query_qualite, $base) or die(mysql_error());
    			while($val_qualite = @mysql_fetch_array($result_qualite)){
    			echo 'A voir<br />';
    			}
    			?> 
    		</div>
    	</td>
        <td rowspan="7" background="img/tableau-separation-noir.png">&nbsp;</td>
    	<td height="15" align="center">
    		<div id="produit">
    			<?php
    			$query_qualite = xxx;
    			$result_qualite = mysql_query($query_qualite, $base) or die(mysql_error());
    			while($val_qualite = @mysql_fetch_array($result_qualite)){
     
    			echo '<a href="ruban-fiche.php">Voir Produit</a><br />';
     
    			}
    			?>
    		</div>
     
    	</td>
        <td rowspan="7" background="img/tableau-separation-noir.png">&nbsp;</td>
      </tr>
    </table>

    Merci d'avance pour votre aide

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 101
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 101
    Points : 8 211
    Points
    8 211
    Billets dans le blog
    17
    Par défaut
    J'aimerais récupérer les informations de chaque colonne par ligne par ligne.
    C'est quoi une ligne pour toi ? Moi je ne vois qu'une seule ligne (<tr>) et plusieurs colonnes (<td>).

    Pourquoi procéder de la sorte par colonne ? Ce me semble bizarre.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 104
    Points : 45
    Points
    45
    Par défaut
    Séb. en effet je n'ai qu'une ligne mais vu que je récupère plusieurs valeurs par colonnne que je mets les unes en dessous des autres j'ai plusieurs lignes dans une colonne si tu arrives à me suivre.
    Comme je disais mes requêtes sont liées donc j'ai le même nombre de valeurs dans chaque colonne.
    Je cherche à récupérer les valeurs de chaque colonne sur la même ligne si je peux m'exprimer ainsi.

    J'espère que vous arrivez à me suivre.

    Merci d'avance

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 101
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 101
    Points : 8 211
    Points
    8 211
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par nkordiko Voir le message
    J'espère que vous arrivez à me suivre.
    Oui, mais pourquoi procéder ainsi, par colonne ?

    Si tu veux récupérer une ligne c'est que les lignes ont intrinsèquement une certaine importance. Dans ce cas pourquoi ne pas afficher tes données ligne par ligne avec un <tr> par enregistrement ?

    Sinon si tu veux continuer en gérant des colonnes il faudrait que tu soumettes un n° de ligne et que le script extrait les valeurs correspondantes. C'est tiré par les cheveux.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  5. #5
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2004
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : Vatican

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2004
    Messages : 144
    Points : 238
    Points
    238
    Par défaut
    Bonjour,
    Bizarre ta façon de faire une query par colonne d'affichage, il me semble qu'une unique query avec des joins pourrait te renvoyer toutes les valeurs.

    Mais bon.

    pour ce qui est de ta demande, tu peux mettre les valeurs dans une string séparé par | ou ; et puis quand tu cliques tu postes l'id et le string qui va avec

    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
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
     
     
    <table width="690" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td height="25" class="titretableau">Largeur</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Longueur</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Qualité</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Marque Supportée</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Prix</td>
        <td>&nbsp;</td>
    	<td height="25" class="titretableau"></td>
        <td>&nbsp;</td>
      </tr>
      <tr>
          <td height="15" align="center">
    		<div id="laize">
     
    			<?php
     $my_str="";
    			$query_laize = xxx;
    			$result_laize = mysql_query($query_laize, $base) or die(mysql_error());
    			while($val_laize = @mysql_fetch_array($result_laize)){
     
    				echo $val_laize['value'].'<br />';
    				$val_laize_capture.=$val_laize['value'];
    			}
      $my_str.=$val_laize_capture."|";
      //et tu refais pour chaque boucle
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" background="img/tableau-separation-noir.png">&nbsp;</td>
        <td height="15" align="center">
    		<div id="longueur">
    			<?php
    			$query_longueur =xxx;
     
     
    			$result_longueur = mysql_query($query_longueur, $base) or die(mysql_error());
    			while($val_longueur = @mysql_fetch_array($result_longueur)){
    			echo $val_longueur['value'].'<br />';
    			$val_longueur_capture.= $val_longueur['value'];
    			}
    			  $my_str.=$val_longueur_capture."|";
     
    			//  tu procède ainsi pour chaque variable
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" align="center" background="img/tableau-separation-noir.png">&nbsp;</td>
        <td height="15" align="center">
    		<div id="qualite">
    			<?php
    			$query_qualite = xxx;
    			$result_qualite = mysql_query($query_qualite, $base) or die(mysql_error());
    			while($val_qualite = @mysql_fetch_array($result_qualite)){
    			echo utf8_encode($val_qualite['value']).'<br />';
    			}
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" align="center" background="img/tableau-separation-noir.png">&nbsp;</td>
       <td height="15" align="center">
    		<div id="marque">
    			<?php
    			$query_marque =xxx;
    			$result_marque = mysql_query($query_marque, $base) or die(mysql_error());
    			while($val_marque = @mysql_fetch_array($result_marque)){
    			echo utf8_encode($val_marque['name']).'<br />';
    			}
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" align="center" background="img/tableau-separation-noir.png">&nbsp;</td>
        <td height="15" align="center">
    		<div id="prix">
    			<?php
    			$query_qualite = xxx;
    			$result_qualite = mysql_query($query_qualite, $base) or die(mysql_error());
    			while($val_qualite = @mysql_fetch_array($result_qualite)){
    			echo 'A voir<br />';
    			}
    			?> 
    		</div>
    	</td>
        <td rowspan="7" background="img/tableau-separation-noir.png">&nbsp;</td>
    	<td height="15" align="center">
    		<div id="produit">
    			<?php
    			$query_qualite = xxx;
    			$result_qualite = mysql_query($query_qualite, $base) or die(mysql_error());
    			while($val_qualite = @mysql_fetch_array($result_qualite)){
     
    			echo '<a href="ruban-fiche.php?var=$mystr">Voir Produit</a><br />';
    // enfin ici tu fai l"appel par get ou sinon une form par ligne et un input hidden par ligne contenant ta $mystr
    			}
    			?>
    		</div>
     
    	</td>
        <td rowspan="7" background="img/tableau-separation-noir.png">&nbsp;</td>
      </tr>
    </table>
    .
    . . Savoir, savoir faire, faire , faire savoir...

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 104
    Points : 45
    Points
    45
    Par défaut
    Merci pour votre aide.

    J'ai réussi à faire ce que je voulais ainsi les modifs sont en rouge dans le code

    Code php : 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
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    <table width="690" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td height="25" class="titretableau">Largeur</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Longueur</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Qualité</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Marque Supportée</td>
        <td width="4" height="25">&nbsp;</td>
        <td height="25" class="titretableau">Prix</td>
        <td>&nbsp;</td>
    	<td height="25" class="titretableau"></td>
        <td>&nbsp;</td>
      </tr>
      <tr>
          <td height="15" align="center">
    		<div id="laize">
     
    			<?php
     
    			$query_laize = xxx;
    			$result_laize = mysql_query($query_laize, $base) or die(mysql_error());
                            $i=0;
    			while($val_laize = @mysql_fetch_array($result_laize)){
     
    				echo $val_laize['value'].'<br />';
                     $tab['largeur'][$i] = utf8_encode($val_laize['value']);         
                                       $i++;
    			}
     
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" background="img/tableau-separation-noir.png">&nbsp;</td>
        <td height="15" align="center">
    		<div id="longueur">
    			<?php
    			$query_longueur =xxx;
     
     
    			$result_longueur = mysql_query($query_longueur, $base) or die(mysql_error());
    $i=0;
    			while($val_longueur = @mysql_fetch_array($result_longueur)){
    			echo $val_longueur['value'].'<br />';
    $tab['longueur'][$i] = utf8_encode($val_longueur['value']);
    $i++;
    			}
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" align="center" background="img/tableau-separation-noir.png">&nbsp;</td>
        <td height="15" align="center">
    		<div id="qualite">
    			<?php
    			$query_qualite = xxx;
    			$result_qualite = mysql_query($query_qualite, $base) or die(mysql_error());
    $i=0;
    			while($val_qualite = @mysql_fetch_array($result_qualite)){
    			echo utf8_encode($val_qualite['value']).'<br />';
        $tab['qualite'][$i] = utf8_encode($val_qualite['value']);
    $i++;
    			}
    			?>
    		</div>
    	</td>
        <td width="4" rowspan="7" align="center" background="img/tableau-separation-noir.png">&nbsp;</td>
       <td height="15" align="center">
    		<div id="marque">
    			<?php
    			$query_marque =xxx;
    			$result_marque = mysql_query($query_marque, $base) or die(mysql_error());
    $i=0;
    			while($val_marque = @mysql_fetch_array($result_marque)){
    			echo utf8_encode($val_marque['name']).'<br />';
    $tab['marque'][$i] = utf8_encode($val_marque['value']);
    			} 
    			?>
    		</div>
    	</td>
           <td rowspan="7" background="img/tableau-separation-noir.png">&nbsp;</td>
    	<td height="15" align="center">
    		<div id="produit">
    			<?php
    			$query_qualite = xxx;
    			$result_qualite = mysql_query($query_qualite, $base) or die(mysql_error());
    $i=0;
    			while($val_qualite = @mysql_fetch_array($result_qualite)){
     
    echo '<a href="ruban-fiche.php?largeur='.$tab['largeur'][$i].'&longueur='.$tab['longueur'][$i].'&qualite='.$tab['qualite'][$i].'&marque='.$tab['marque'][$i].'&encrage='.$tab['encrage'][$i].'&couleur='.$tab['couleur'][$i].'&surface='.$tab['surface'][$i].'">Voir Produit</a><br />';
    $i++;
    			
    			
     
    			}
    			?>
    		</div>
     
    	</td>
        <td rowspan="7" background="img/tableau-separation-noir.png">&nbsp;</td>
      </tr>
    </table>
    Je passe toutes les valeurs via l'url et je les récupère en get dans la page de mon choix.
    Merci pour votre aide

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

Discussions similaires

  1. [AC-2007] Récupérer nom de l'utilisateur windows dans une requête SQL
    Par Dallemg dans le forum VBA Access
    Réponses: 3
    Dernier message: 02/02/2015, 16h04
  2. [AC-2007] Récupérer le nom d'un champ dans une requête SQL
    Par othke dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 09/03/2010, 18h48
  3. Réponses: 1
    Dernier message: 04/06/2007, 10h23
  4. Récupérer la valeur d'un champ dans une requête
    Par romaintaz dans le forum JDBC
    Réponses: 7
    Dernier message: 18/08/2006, 09h13
  5. Récupérer la valeur des champs calculés dans une requète SQL dans vba
    Par FrédéricCM dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 28/06/2006, 16h29

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