le 09/03/2007 à 23:51
Problème avec l'affichage d'un fichier txt
Bonjour,
J'ai un problème avec l'affichage d'une section d'un fichier txt. Lorsque j'essai d'afficher un texte situé entre deux balises, et que celui-ci est situé sur plusieurs lignes, je n'arrives pas à faire afficher son contenu.
Voici le code php:
<?php
$fp = fopen("nouvelles/textes/reference.txt", "r");
$reference = fgets($fp);
fclose($fp);
$fp = fopen("nouvelles/textes/$reference.txt", "r");
if ($fp) {
while (!feof ($fp)) {
$line = fgets($fp);
eregi("[TITRE](.*)[/TITRE]", $line, $titre);
eregi("[AUTEUR](.*)[/AUTEUR]", $line, $auteur);
eregi("[DATE](.*)[/DATE]", $line, $date);
eregi("[TEXTE](.*)[/TEXTE]",$line, $texte);
}
fclose($fp);
}
?>
Actuellement, tant que le texte situé entre les balises [TEXTE] est situé sur la même ligne, tout fonctionne. Cependant, si ce n'est pas le cas, la page n'affiche pas le contenu. J'aimerais donc savoir comment règler ce problème.
J'ai un problème avec l'affichage d'une section d'un fichier txt. Lorsque j'essai d'afficher un texte situé entre deux balises, et que celui-ci est situé sur plusieurs lignes, je n'arrives pas à faire afficher son contenu.
Voici le code php:
<?php
$fp = fopen("nouvelles/textes/reference.txt", "r");
$reference = fgets($fp);
fclose($fp);
$fp = fopen("nouvelles/textes/$reference.txt", "r");
if ($fp) {
while (!feof ($fp)) {
$line = fgets($fp);
eregi("[TITRE](.*)[/TITRE]", $line, $titre);
eregi("[AUTEUR](.*)[/AUTEUR]", $line, $auteur);
eregi("[DATE](.*)[/DATE]", $line, $date);
eregi("[TEXTE](.*)[/TEXTE]",$line, $texte);
}
fclose($fp);
}
?>
Actuellement, tant que le texte situé entre les balises [TEXTE] est situé sur la même ligne, tout fonctionne. Cependant, si ce n'est pas le cas, la page n'affiche pas le contenu. J'aimerais donc savoir comment règler ce problème.