Salut,
[Débutant en PHP]
J'ai un fichier texte qui s'appelle "liste_messages.txt" et qui contient :
message_1.txt
message_2.txt
sans espace après chaque ligne et sans retour chariot après la dernière
ligne.
J'ai aussi 2 fichiers texte dont les noms sont ceux contenus dans le fichier
précédent.
Le but du jeu :
- Lire le fichier "liste_messages.txt", mettre ses lignes dans un tableau,
trier le tableau en ordre inverse et récupérer ensuite la valeur de chaque
ligne du tableau (donc le nom du message) pour aller lire et afficher ce
message.
Voici mon code :
<?php
$listMsg = file("news/liste_messages.txt");
arsort ($listMsg);
while ( list( $numeroLigne, $nomMsg ) = each( $listMsg ) ) {
echo "<B>Ligne $numeroLigne:</B> $nomMsg" . "toto<br>";
$fichier = fopen("news/$nomMsg", "r");
$titreMsg = fgets($fichier, 4096);
$dateMsg = fgets($fichier, 4096);
/ / à ce niveau je ne suis pas à la fin du fichier mais je ne veux pas
afficher la suite
echo "<h2>$titreMsg</h2>";
echo "<p class=\"date\">$dateMsg</p>";
fclose ($fichier);
}
?>
Le programme m'affiche bien :
Ligne 1: message_2.txttoto
- Le titre
- La date
Ligne 0: message_1.txt toto
et ensuite :
Warning: fopen(news/message_1.txt ) [function.fopen]: failed to open stream:
Parceque si vous remarquez bien, il y a un caractère à la fin du texte
"message_1.txt", on le voit bien quand j'écris "toto" derrière, qui est
censé être collé.
Quel est ce caractère ?
- Un espace (qui vient d'où) ?
- Une marque de fin de tableau ?
- Une marque de fin de fichier ?
Comment l'enlever pour retrouver le nom exact du fichier à ouvrir ?
Merci.
--
A'tchao
Le Fou
http://gloupclub.free.fr/
http://www.ffessm-cd84.com/
http://ehiller.club.fr/
Lire les réponses