PHP ... Petite question toute simple

Résolu/Fermé
dubuducu Messages postés 391 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 19 mai 2010 - 19 nov. 2008 à 17:01
xxkirastarothxx Messages postés 378 Date d'inscription vendredi 19 octobre 2007 Statut Membre Dernière intervention 22 mars 2013 - 21 nov. 2008 à 11:46
Bonjour,
Je souhaiterai comme affichage avoir cela :

sous_cat1 | sous_cat2
sous_cat3 | sous_cat4
etc ...


cependant j'obtien avec cette methode tout en liste !
$sql = "SELECT DISTINCT sous_cat FROM formulaire  WHERE cat = 'maison - habitat' ORDER BY id"; 
$result = mysql_query( $sql) or die( "Erreur : " . mysql_error() );

echo "<tr>";
while ($liste=mysql_fetch_array($result)) 
{ 
extract($liste); 
echo "<tr>";
echo "$sous_cat"; 
echo "</tr>";
} 



Ne sachant pas tres bien me servir des tableaux, pouvez vous m'aider ! Merci

10 réponses

xxkirastarothxx Messages postés 378 Date d'inscription vendredi 19 octobre 2007 Statut Membre Dernière intervention 22 mars 2013 40
19 nov. 2008 à 17:16
Essaye ça:


$sql = "SELECT DISTINCT sous_cat FROM formulaire  WHERE cat = 'maison - habitat' ORDER BY id"; 
$result = mysql_query( $sql) or die( "Erreur : " . mysql_error() );

echo "<table>";
$td = 0;
while ($liste=mysql_fetch_array($result)) 
{ 
   if($td = 2){$td=0 }
   if($td = 0)
   {
      echo '<tr>'
   }
   echo '<td>'.$liste['sous_cat'].'</td>';
   if($td = 1)
   {
      echo '</tr>'
   }
   $td++;
} 
echo "</table>";

0
dubuducu Messages postés 391 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 19 mai 2010 4
19 nov. 2008 à 17:21
ceci ne fonctionne pas ! page blanche et de plus, je ne vois pas bien ce que tu veux faire !
peux tu etre plus précis s'il te plait !
Merci beaucoup de prendre du temps pour mes soucis ! Merci
0
dubuducu Messages postés 391 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 19 mai 2010 4
19 nov. 2008 à 17:25
-REctification , en corigeant quelques fautes de syntaxe j'obtien comme resultat :
sous_cat1
sous_cat 2
sous_cat3 
etc
...


tout en ligne :s !!! alors que je souhaite l'avoir de cette maniere
A | B
C | D
etc ...


Merci
0
xxkirastarothxx Messages postés 378 Date d'inscription vendredi 19 octobre 2007 Statut Membre Dernière intervention 22 mars 2013 40
19 nov. 2008 à 17:28
Pourrait tu coller le code source généré STP ? (afficher code source)
essaye en remplaçant <table> par <table border='1'> (ligne 4 ou 5)

Petite explication:
<table> => j'ouvre un tableau
$td = 0 => je definis la variable $td
Dans la boucle while:

si $td = 0 => j'ouvre un nouvelle ligne (<tr>)
j'affiche la variable $liste['sous_cat'] <= ça tu va surement avoir besoin de le modifier du genre $liste['NOM_DU_CHAMP_SQL']
si $td = 1 => je referme la ligne.
$td++ => j'incremente $td de 1.

Logiquement ça devrais créer un tableau de 2 case par ligne


PS => je repondrais au reste plus tard, je rentre chez moi ^^
J'en ai pour une heure, a tte ;)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dubuducu Messages postés 391 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 19 mai 2010 4
19 nov. 2008 à 17:33
code généré
<table align='center' border='1' >
<tr>
<td bgcolor='#3366ff' font color='#FFFFFF'>
<p  align='center' fontface='verdana' size='1'>essai</p></td>
<td bgcolor='#3366ff' font color='#FFFFFF'><p  align='center' fontface='verdana' size='1'>Devis Fenêtres</p></td><td bgcolor='#3366ff' font color='#FFFFFF'><p  align='center' fontface='verdana' size='1'>Devis Evenementiel</p></td>
<td bgcolor='#3366ff' font color='#FFFFFF'><p  align='center' fontface='verdana' size='1'>Devis chalets</p></td></tr><tr><td><table border ='1'><td>chauffage - climatisation</td></tr><td>construction - renovation</td></tr><td>cuisine - salle de bain</td></tr><td>electricite - alarme</td></tr><td>peinture - revetement</td></tr><td>portes - fenetres - verandas</td></tr><td>toitures - facades</td></tr><td>jardin - piscine - terrasse</td></tr><td>traitements - diagnostics - petits travaux</td></tr></table>



Le tableau généré ne possède qu'une seule colonne.
0
Bonjour

if($td = 2)

remplacer par if($td == 2)

idem pour la comparaison avec 1 et 0, bien sûr
0
xxkirastarothxx Messages postés 378 Date d'inscription vendredi 19 octobre 2007 Statut Membre Dernière intervention 22 mars 2013 40
20 nov. 2008 à 09:19
Arf, le boulet -_-
Désolé s'ma faute j'ai pas fait attention.

ça donne quoi avec ça ?
0
dubuducu Messages postés 391 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 19 mai 2010 4
20 nov. 2008 à 13:34
Alors, cela me donne :
Un tableau a 2 lignes dont sur la premiere j'ai bien deux colonnes !
mais sur la deuxieme ligne j'ai 7 colonnes !

vous y etes presques ! Merci d'avance !
0
dubuducu Messages postés 391 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 19 mai 2010 4
20 nov. 2008 à 13:36
Excusez moi, c'est moi le boulet dans l'histoire ! Le code est parfait merci beaucoup a vous pour ce travail !
Voici le résultat final !
Beau travail !

$sql = "SELECT DISTINCT sous_cat FROM formulaire  WHERE cat = 'maison - habitat' ORDER BY id"; 
$result = mysql_query( $sql) or die( "Erreur : " . mysql_error() );

echo "<table border ='1'>";
$td = '0';
while ($liste=mysql_fetch_array($result)) 
{ 
   if($td == '2')
   
   {$td = '0' ;}
   
   if($td == '0')
   {
      echo '<tr>';
   }
   
   echo '<td>'.$liste['sous_cat'].'</td>';
   
   if($td == '1')
   {
      echo '</tr>';
   }
   $td++;
} 
echo "</table>";

echo "<\td>";


MERCIII
0
xxkirastarothxx Messages postés 378 Date d'inscription vendredi 19 octobre 2007 Statut Membre Dernière intervention 22 mars 2013 40
21 nov. 2008 à 11:46
Y'a pas de quoi ;)
Bonne chance dans la suite de ton projet ;)
Cdlt.
0