par
casio » 24 oct. 2008, 00:56
Bonjour
Je te conseillerais de toujours vérifier d'abord si le fichier existe. je crois que depuis php5.0 file_exists supporte le protocole http. Ensuite vérifie la permission du fichier avant de faire ton fopen avec is_readable, je crois qu'il supporte aussi le protocle http depuis php 5.0.
J'espere que ça t'aidera.
[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]
Bon, j'ai testé, mais ça me donne toujours le même résultat : "L'ouverture du fichier
http://monserveur/dons.txt n'a pas réussi.", alors que j'ai testé avec des fichiers existants...
Code : Tout sélectionner
<?php
clearstatcache();
$fichdons = 'http://monserveur/dons.txt'; /* nom du fichier TXT */
if (!is_file($fichdons)) {
echo "<br>L'ouverture du fichier $fichdons n'a pas réussi.<br>";
} else {
$fpdons = fopen($fichdons, 'r'); /* Ouverture du fichier en lecture */
$ic = 0;
$ic_max = 10; /* Maximum de lignes lues */
echo "<div align='center'><table width='600' border='0' bgcolor='#FFFFFF' cellpadding='3' background='pict/Cadre2-fond.gif'>
<tr>
<td align='left' style='border:1px dashed Black;'>";
while (!feof($fpdons) && ++$ic<=$ic_max)
{
$ligne = fgets($fpdons, 100); /* lecture des 100 premiers caractères */
$ligne = str_replace("'"," ", $ligne); /* Remplacement des caractères */
echo "$ligne"; /* Affichage de la ligne */
// En reste t'il encore ?
$apu = substr($ligne, 0, 8);
// Suppression des tirets de debut
$tirets = str_replace("- ", "", $ligne);
// Boucle pour l'affichage en lien avec image
if ($apu=="- (parti")
echo "<br>";
else
echo " (<a href='mailto:wda@wda-fr.org?subject=[Don] - Requete&body=Bonjour, Je serais interesse par : ".$tirets."'>Ecrivez-nous</a>)<br>"; /* Saut à chaque ligne */
echo "</td>
</tr>";}
echo "</table>
<table width='600' border='0' cellpadding='0'>
<tr>
<td><div align='right'>(MaJ : " . date("d/m/Y", filectime($fichdons)) . ")</div></td>
</tr>
</table></div>";
fclose($fpdons); /* Fermeture du fichier */
}
?>
[quote="damaskinos"]Bonjour
Je te conseillerais de toujours vérifier d'abord si le fichier existe. je crois que depuis php5.0 file_exists supporte le protocole http. Ensuite vérifie la permission du fichier avant de faire ton fopen avec is_readable, je crois qu'il supporte aussi le protocle http depuis php 5.0.
J'espere que ça t'aidera.
[i][color=darkred][Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur][/color][/i][/quote]
Bon, j'ai testé, mais ça me donne toujours le même résultat : "L'ouverture du fichier http://monserveur/dons.txt n'a pas réussi.", alors que j'ai testé avec des fichiers existants...
[code]<?php
clearstatcache();
$fichdons = 'http://monserveur/dons.txt'; /* nom du fichier TXT */
if (!is_file($fichdons)) {
echo "<br>L'ouverture du fichier $fichdons n'a pas réussi.<br>";
} else {
$fpdons = fopen($fichdons, 'r'); /* Ouverture du fichier en lecture */
$ic = 0;
$ic_max = 10; /* Maximum de lignes lues */
echo "<div align='center'><table width='600' border='0' bgcolor='#FFFFFF' cellpadding='3' background='pict/Cadre2-fond.gif'>
<tr>
<td align='left' style='border:1px dashed Black;'>";
while (!feof($fpdons) && ++$ic<=$ic_max)
{
$ligne = fgets($fpdons, 100); /* lecture des 100 premiers caractères */
$ligne = str_replace("'"," ", $ligne); /* Remplacement des caractères */
echo "$ligne"; /* Affichage de la ligne */
// En reste t'il encore ?
$apu = substr($ligne, 0, 8);
// Suppression des tirets de debut
$tirets = str_replace("- ", "", $ligne);
// Boucle pour l'affichage en lien avec image
if ($apu=="- (parti")
echo "<br>";
else
echo " (<a href='mailto:wda@wda-fr.org?subject=[Don] - Requete&body=Bonjour, Je serais interesse par : ".$tirets."'>Ecrivez-nous</a>)<br>"; /* Saut à chaque ligne */
echo "</td>
</tr>";}
echo "</table>
<table width='600' border='0' cellpadding='0'>
<tr>
<td><div align='right'>(MaJ : " . date("d/m/Y", filectime($fichdons)) . ")</div></td>
</tr>
</table></div>";
fclose($fpdons); /* Fermeture du fichier */
}
?>[/code]