PHP ... Petite question toute simple

Résolu
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
Configuration: Windows XP
Internet Explorer 7.0

10 réponses

  1. 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>";

    1. 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
      1. -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
        1. 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 ;)
          1. 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.
            1. Bonjour

              if($td = 2)

              remplacer par if($td == 2)

              idem pour la comparaison avec 1 et 0, bien sûr
              1. Arf, le boulet -_-
                Désolé s'ma faute j'ai pas fait attention.

                ça donne quoi avec ça ?
                1. 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 !
                  1. 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
                    1. Y'a pas de quoi ;)
                      Bonne chance dans la suite de ton projet ;)
                      Cdlt.