Fichiers

Résolu
Bonjour, je travaille sur les fichiers en Php. Dans un premier temps, j'ai réussi a ajouter quelque chose dans le fichier mais ensuite dans une autre page je voudrais rafficher les informations dans un tableau et c'est la que j'ai un petit soucis ?

3 réponses

  1. voici mon code

    <!DOCTYPE html>
    <html>
    <head>
     <title>Affichage des contacts</title>
    </head>
    <body>
     <table border='30' cellpadding="12" cellspacing="2" width="35%" align="CENTER">
     <form>
     <?php $ouvre=fopen("fichier.txt","r"); 
      
      while (!feof ($ouvre)) 
      { 
        $lecture = fgets ($ouvre, 4096); 
        $donnee = explode ("*",$lecture); 
        $combien = count ($donnee)-1; 
        
    
       for ($i=0;$i<=$combien;$i++) 
        { 
          echo "<td>$lecture</td>";
          echo $donnee[$i], "<br>"; 
        } 
     } 
    
     fclose($ouvre); // fermeture
    
     ?>
     <a href="fichiers.php" >Ajouter un contact</a>
    
    
    </form>
    </table>
    </body>
    </html>
    
    
    0
    1. Bonjour,

      Dans ta boucle d'affichage, tu mets <td>$lecture</td>, or $lecture contient le contact entier et non pas sa décomposition.
      C'est plutôt "<td>" . $donnee[$i] . "</td>" que tu voudrais, non ?

      Xavier
      0
      1. Super merci beaucoup maintenant j'essaye de les afficher par ordre alphabétique avec la fonction sort
        comment je pourrais faire ?
        0
      2. Dans ce cas-là, plutôt que d'afficher au fur et à mesure de la lecture, il faut stocker les contacts dans un tableau. Ensuite, tu le tries avec sort(), et enfin tu fais une boucle dessus pour faire l'affichage.
        0
      3. Oui c'est ce que j'avais penser faire mais en cherchant plus loin, j'ai trouver la fonction file qui permet de faire le tableau tout seule et donc ensuite je le trie avec sort(), mais je ne sais pas comment l'utiliser dans mon code ??
        0
      4. Bonjour,

        Il ne faut pas l'intégrer à ton code, du coup, il faut plutôt réécrire ton code.
        Tu peux faire quelque chose comme ça :
         <?php
        $fichier = file("fichier.txt"); 
        sort($fichier);
        foreach ($fichier as $ligne)
        {
            $donnee = explode ("*", $ligne); 
            foreach ($donnee as $valeur)
                echo "<td>$valeur</td>";
        }
        ?>

        Xavier
        0
      5. <!DOCTYPE html>
        <html>
        <head>
        	<title>Affichage des contacts</title>
        </head>
        <body>
        	<table border='30' cellpadding="12" cellspacing="2" width="10%" align="CENTER">
        	<form>
        	<?php 
        
        	$ouvre = fopen("fichier.txt","r"); 
        	
        	while (!feof ($ouvre)) 
        	 { 
        
        		 $lecture = fgets ($ouvre, 4096); 
        		 $donnee = explode ("*",$lecture); 
        		 $combien = count ($donnee)-1; 
        		 $compteur = 0;
        		
        		 $fichier = file("fichier.txt"); 
        
        		 sort($fichier);
        		 
        		 foreach ($fichier as $ligne)
        			{
        		    	
        		    	$donnee = explode ("*", $ligne); 
        		    	foreach ($donnee as $valeur);
        		        //echo "<td>$valeur</td>";
        
        			}
        
        		 echo "<tr><th>Nom</th>";
        		 echo "<th>Prenom</th>";
        		 echo "<th>Numéro de téléphone</th>";
        		 echo "</tr>";
        		 echo "<tr>";	
        		
        			
        		 for ($i=0;$i<$combien;$i++) 
        		  { 
        
        		  	
        		  	$compteur++;
        			
        			echo "<td>";	
        		  	echo $donnee[$i], "<br />";
        		  	echo "</td>";
        
        		  	if ($compteur == 3)
        		  	{
        		  		$compteur = 0;
        		  		echo "<tr></tr>";
        		  	}
        
        		  }
        		 echo "</tr>";
        
        		 
        	}
        
        	fclose($ouvre); // fermeture
        
         ?>
        
        	
        
        
        </form>
        </table>
        </body>
        <footer>
        	<br /><center><a href="fichiers.php" >Ajouter un contact</a><br /><br />
        	<a href="accueil.php">Accueil</a></center>
        </footer>
        </html>
        
        
        
        
        0