Php: probleme de lecture de fichier
Résolu/Fermé
vincearoo
Messages postés
4
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
16 mai 2008
-
15 mai 2008 à 05:44
vincearoo Messages postés 4 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 16 mai 2008 - 15 mai 2008 à 09:39
vincearoo Messages postés 4 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 16 mai 2008 - 15 mai 2008 à 09:39
A voir également:
- Php: probleme de lecture de fichier
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Bouton php - Forum PHP
- \R php ✓ - Forum PHP
- Php alert - Forum PHP
3 réponses
Tiller
Messages postés
781
Date d'inscription
mercredi 4 juillet 2007
Statut
Membre
Dernière intervention
14 septembre 2008
211
15 mai 2008 à 09:04
15 mai 2008 à 09:04
Je ne pense pas que cela vienne de sa, mais il faut toujours séparé les variables, certe cela fonctionne dans les quotes, mais pas au top... Très mauvaise habitude
A part sa c'est le seul truc qui pour moi, pourrait ne pas marcher
Essaie avec les "or die" aussi
<?php $seq = fopen("albums/sequence.dat.php", "r"); while (!feof($seq)) { $album = fgets($seq) or die('Bug 5'); echo $album; if (!is_file('albums/'.$album.'.dat.php')) die('Bug 6'); $dat = fopen("albums/".$album.".dat.php", "r") or die('Bug 1'); $c_dat = fgets($dat) or die('Bug 2'); list($type,$titre,$nombre,$date) = explode('|', $c_dat) or die('Bug 3'); echo "(".$titre.")"; fclose($dat) or die('Bug 4'); } fclose($seq); ?>
A part sa c'est le seul truc qui pour moi, pourrait ne pas marcher
Essaie avec les "or die" aussi
vincearoo
Messages postés
4
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
16 mai 2008
15 mai 2008 à 09:06
15 mai 2008 à 09:06
Je crois avoir trouvé l'origine du problème ! Mais toujours pas la solution...
Lorsque le script lit le fichier "sequence.dat.php" il voit un espace a la fin de chaque ligne sauf la dernière. Du coup ma variable $album prend tour à tour la valeur "fichier_1 ", "fichier_2 ", ... , "fichier_n" et ma variable $dat pointe vers les fichiers "albums/fichier_1 .dat.php", "albums/fichier_2 .dat.php", ... , "albums/fichier_n.dat.php". Seul ce dernier existe.
Quelqu'un saurait-il comment contourner ce problème ? Mon éditeur de texte (wordpad /XP ou Kate /linux) ne voit bien sur aucun espace en fin de ligne.
Lorsque le script lit le fichier "sequence.dat.php" il voit un espace a la fin de chaque ligne sauf la dernière. Du coup ma variable $album prend tour à tour la valeur "fichier_1 ", "fichier_2 ", ... , "fichier_n" et ma variable $dat pointe vers les fichiers "albums/fichier_1 .dat.php", "albums/fichier_2 .dat.php", ... , "albums/fichier_n.dat.php". Seul ce dernier existe.
Quelqu'un saurait-il comment contourner ce problème ? Mon éditeur de texte (wordpad /XP ou Kate /linux) ne voit bien sur aucun espace en fin de ligne.
Tiller
Messages postés
781
Date d'inscription
mercredi 4 juillet 2007
Statut
Membre
Dernière intervention
14 septembre 2008
211
15 mai 2008 à 09:14
15 mai 2008 à 09:14
<?php $seq = fopen("albums/sequence.dat.php", "r"); while (!feof($seq)) { $album = fgets($seq); echo $album; for ($i = 0; $i < 2; $i = 0) { $c1 = (substr($album, -2) == "\r"); $c2 = (substr($album, -2) == "\n"); $c3 = (substr($album, -2) == "\t"); if (substr($album, -1) == ' ') $album = substr($album, 0, -1); elseif ($c1 || $c2 || $c3) $album = substr($album, 0, -2); else $i = 5; } $dat = fopen("albums/".$album.".dat.php", "r"); list($type,$titre,$nombre,$date) = explode('|',fgets($dat)); echo "(".$titre.")"; fclose($dat); } fclose($seq); ?>
vincearoo
Messages postés
4
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
16 mai 2008
15 mai 2008 à 09:39
15 mai 2008 à 09:39
Merci pour votre aide, ca marche impeccable !
J'ai aussi decouvert entretemps la fonction trim() qui fait le boulot sans alourdir le code.
J'ai aussi decouvert entretemps la fonction trim() qui fait le boulot sans alourdir le code.