Liste sous forme de tableaux éclatés

Petit nouveau ! | 4 Messages

25 janv. 2012, 19:50

Bonjour,
Le code que je vais vous donné me permet de faire une liste d'immeubles dans un tableaux dont le résulta est issus d'une table residence.

Malgré mes multiples recherche sur internet, je n'arrive pas à éclaté la liste des immeubles par quartier de tel sorte:

Quartier A:
Liste des immeubles du Quartier A dans un tableau

Quartier B:
Liste des immeubles du Quartier B dans un tableau
 
<table><br/>
      <tr> Liste des immeubles:
			<th>Id</th>
			<th>Quartier</th>
			<th>Nom  de l'immeuble</th>
			<th>C.P.</th>
			<th>Ville</th>
			<th>Année</th>
			<th>Type</th>
	 </tr>

		<?php
		
$serveur = '******';
$utilisateur = '*****';
$motdepasse = '*****';
$sql = 'SELECT * FROM residence ORDER BY Quartier'; 
		

  // connection à la base de données
  $connection = @mysql_connect( $serveur, $utilisateur, $motdepasse ) or die( 'Connection impossible' );
  // Sélection de la BdD
@mysql_select_db( "immeubles", $connection ) or die( "Sélection de la base impossible" );

$execution = @mysql_query( $sql ) or die(mysql_error());
///./*echo  "Votre requête renvoie une erreur ! MySQL dit : ". mysql_error();*/




 // Creation et envoi de la requete

			$result = mysql_query($sql);
			
			while($lignes = mysql_fetch_row($result)) //Tant qu'il y a un enregistrement dans la table on l'associe à une ligne du tableau
			{
			// var_dump($lignes) ;
			
			
			
				//Affichage du tableau avec les valeurs de la ligne courante
				echo '<tr><td>'.$lignes[0].'</td>'."\n"; // Numéro de l'immeuble généré automatiquement
				echo '<td>'.$lignes[1].'</td>'."\n"; // Nom du quartier
				echo '<td>'.$lignes[2].'</td>'."\n"; // Nom de l'immeuble
				echo '<td>'.$lignes[4].'</td>'."\n"; // Code Postal
				echo '<td>'.$lignes[5].'</td>'."\n"; // Ville
				echo '<td>'.$lignes[9].'</td>'."\n"; // Année de construction
				echo '<td>'.$lignes[10].'</td>'."\n"; // type d'immeuble
								
				// echo '<td><a href=ModifierDonateurs.php?idmodif='.$tab['id'].'> Modifier </a></td>'; //Petit lien permettant de traiter la ligne que l'on souhaite
				//echo '</tr>';
			}
			
			 echo '</tr>';
			 
			 			 
		?></table>

Merci par avance pour votre aide.

ViPHP
xTG
ViPHP | 7331 Messages

25 janv. 2012, 21:23

Voilà le principe pour détecter un changement de valeur :
<?php
$array = array(
  0 => array( 'type' => 1, 'value' => 1),
  0 => array( 'type' => 1, 'value' => 2),
  0 => array( 'type' => 1, 'value' => 3),
  0 => array( 'type' => 2, 'value' => 1),
  0 => array( 'type' => 2, 'value' => 2)
);
$type = null;
foreach($array as $enr){
  if( $type != null && $type != $enr['type'] ) // on passe à un nouveau type
    echo '<hr /'; // on utilise une balise hr pour la séparation
  echo $enr['value'] . '<br />'; // on affiche la valeur
  $type = $enr['type']; // on met à jour le dernier type affiché
}
1
2
3
------------------------------------
1
2