[Résolu] Tri dans boucle

Tri dans boucle [Résolu] - PHP - Programmation

Marsh Posté le 03-09-2007 à 16:49:53    

Bonjour,  
 
J'ai un fichier.txt qui contient les infos suivantes :
 

Code :
  1. nom;prenom;adresse;codePostal;ville;email;date


 
Je voudrais retourner un tableau dans lequel certaines colonnes n'apparaissent pas et qui serait comme ça:
 

Code :
  1. n_id;date;nom;prenom;ville


 
Comment dois-je modifier ma boucle pour qu'elle affiche seulement les colonnes souhaitées?
 

Code :
  1. // lecture du fichier et stockage dans un tableau    
  2.   // chaque ligne du fichier est dans une case du tableau
  3.    $lignes = file("petition.txt" );
  4.   // affichage des renseignements
  5.    echo "<table border=1>";
  6.   // traitement de chaque ligne  
  7.       for ($i=0; $i<count($lignes); $i++)
  8.    {
  9.   // Affichage des titres dans les colonnes  
  10.    echo "<tr><td>Numéro<td><td>Date<td><td>Prénom<td><td>Nom<td><tr>";
  11.   // nouvelle ligne
  12.    echo "<tr><td>".($i+1)."</td>";
  13.   // éclatement en éléments distincts
  14.    $personne=explode(";",$lignes[$i]);
  15.   // pour chaque colonne
  16.    for($j = 0; $j < count($personne); $j++)
  17.    {
  18.   // nouvelle colonne
  19.    echo "<td>" . $personne[$j] . "</td>";
  20.    }
  21.   // fin de ligne
  22.    echo "</tr>";
  23.    }
  24.    echo "</table>";
  25.    }


 
Merci d'avance,


Message édité par lousixtyfour le 03-09-2007 à 21:10:04
Reply

Marsh Posté le 03-09-2007 à 16:49:53   

Reply

Marsh Posté le 03-09-2007 à 17:43:08    

Ben il n'y a que toi qui sait les lignes à supprimer. Tu dois donc les spécifier au programme. Par exemple fais un tableau contenant les index à ne pas afficher, et dans ta boucle fais un test pour savoir si $j se trouve dans ce tableau. Si ce n'est pas le cas, alors tu affiches.

Reply

Marsh Posté le 03-09-2007 à 17:50:32    

Salut,
Ca n'est apparemment pas un problème de php, mais de compréhension de la programmation.
Plutôt que de faire une boucle, tu peux juste afficher $i, personne[1], personne[3] ou ce que tu veux plutôt que personne[$j] qui va t'afficher toutes les colonnes.

Reply

Marsh Posté le 03-09-2007 à 21:09:30    

Merci Gzii.
Tout est ok!
 

Code :
  1. // Affichage des titres dans les colonnes  
  2.    echo "<tr><td>Numéro</td><td>Date</td><td>Prénom</td><td>Nom</td><td>Ville</td></tr>";
  3.   // traitement de chaque ligne  
  4.       for ($i=0; $i<count($lignes); $i++)
  5.    {
  6.   // nouvelle ligne avec un compteur au début
  7.    echo "<tr><td>".($i+1)."</td>";
  8.   // éclatement en éléments distincts
  9.    $personne=explode(";",$lignes[$i]);
  10.   // nouvelle colonne pour les données publiques à renvoyer
  11.    echo "<td>".$personne[6]."</td>";
  12.    echo "<td>".$personne[0]."</td>";
  13.    echo "<td>".$personne[1]."</td>";
  14.    echo "<td>".$personne[4]."</td>";
  15.    }

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed