problème lecture d'un fichier texte

problème lecture d'un fichier texte - PHP - Programmation

Marsh Posté le 15-07-2007 à 21:29:07    

Bonsoir,
 
j'ai écrit un petit script pour lire les enregistrements que j'ai ajoutés dans un fichier texte.
 
 

Code :
  1. <?php
  2. echo"<table border=\"2\"><tbody>";
  3. $i=0;
  4. //
  5. //lecture de $tab
  6. for($i=0;$i<count($tab);$i++)
  7. {$tab=file("voiture.txt" );
  8. $ligne= explode (";",$tab[$i]);
  9. echo"<tr><td>$ligne[0]</td><td>$ligne[1]</td><td>$ligne[2]</td><td>$ligne[3]</td><td>$ligne[4]</td<td>$ligne[5]</td></tr>";}
  10. echo"</tbody></table>";
  11. ?>


ltableau s'affiche avec les données des motos, mais j'ai 5 ou 6 undefined index... error je comprends
 
 
j'avais rajouté cette ligne pour initialiser les variables...  
 
if (isset($_POST['enregistre']))
 
{}
 
c'est encore pire mon tableau et les valeurs ne s'affiche plus du tout..... pourriez vous m'aidez?
 
cdlt,


---------------
blog Bretagne
Reply

Marsh Posté le 15-07-2007 à 21:29:07   

Reply

Marsh Posté le 15-07-2007 à 21:49:24    

Ca tient du miracle qu'il ait affiché quelque chose, tu te bases dans ta boucle for sur la taille de quelque chose que tu vas définir à l'intérieur de la boucle, rien que ça, c'est mal parti.
 
Tu lis le fichier une fois pour toute hors de ta boucle (ou tu utilises un boucle while avec un fread), mais pas à chaque passage, c'est complètement inutile.
 
Pour le reste, les messages d'erreurs complet avec les endroits où les erreurs se produisent sont toujours les bienvenus :D
 
(t'es sûr qu'il y a toujours 6 données par ligne dans ton fichier par exemple ?)

Reply

Marsh Posté le 15-07-2007 à 22:00:27    

naceroth a écrit :

Ca tient du miracle qu'il ait affiché quelque chose, tu te bases dans ta boucle for sur la taille de quelque chose que tu vas définir à l'intérieur de la boucle, rien que ça, c'est mal parti.
 
Tu lis le fichier une fois pour toute hors de ta boucle (ou tu utilises un boucle while avec un fread), mais pas à chaque passage, c'est complètement inutile.
 
Pour le reste, les messages d'erreurs complet avec les endroits où les erreurs se produisent sont toujours les bienvenus :D
 
(t'es sûr qu'il y a toujours 6 données par ligne dans ton fichier par exemple ?)


 
j'ai sorti $tab=file("voiture.txt" ); de la boucle et j(ai toujours la même erreur...
 
Notice: Undefined index: 1 in C:\Program Files\EasyPHP 2.0b1\www\list.php on line 22
 
Notice: Undefined index: 2 in C:\Program Files\EasyPHP 2.0b1\www\list.php on line 22
 
Notice: Undefined index: 3 in C:\Program Files\EasyPHP 2.0b1\www\list.php on line 22
 
Notice: Undefined index: 4 in C:\Program Files\EasyPHP 2.0b1\www\list.php on line 22
 
Notice: Undefined index: 5 in C:\Program Files\EasyPHP 2.0b1\www\list.php on line 22


---------------
blog Bretagne
Reply

Marsh Posté le 15-07-2007 à 22:07:50    

Ouais, donc c'est bien ce que je dis, es tu sûr qu'il a bien toujours 6 données par lignes, séparées par des ; dans ton fichier ?

Reply

Marsh Posté le 15-07-2007 à 23:47:07    

ben oui, j'ai vérifié en faisant un fonction count($ligne);
ça me donne bien 6 donnés..


---------------
blog Bretagne
Reply

Marsh Posté le 16-07-2007 à 00:31:06    

pourquoi ça marche pas ce petit script? ...


---------------
blog Bretagne
Reply

Marsh Posté le 16-07-2007 à 03:39:18    

Non mais fait un print_r($ligne) à chaque passage dans la boucle aussi, parce que le script fonctionne sauf si une des lignes du fichier fait des siennes.
 
Mais bon, rien qu'en regardant le source généré de la page, tu devrais voir pourquoi l'explode ne retourne pas 6 résultats.

Reply

Sujets relatifs:

Leave a Replay

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