Page 1 sur 2

Affichage du contenu d’un fichier.txt dans une cellule d’un

Posté : 16 janv. 2006, 03:55
par phpdog
Bonjour à tous :wink:

Je voudrai faire un menu donc les liens afficheront le contenu de fichiers.txt déférents dans un cellule de tableau, donc je par avec un code php qui affiche la contenu d’un fichier.txt:
     <? 
      if(!$fp = file_get_contents(‘texte.txt’)) 
        echo '!!! Erreur sur le page !!!'; 
       else  
        echo $fp;
?>
Que je transforme comme ceci:
    <? 
      if(!$fp = file_get_contents($_GET['corpspag'])) 
        echo '!!! Erreur sur le page !!!'; 
       else  
        echo $fp;
    ?>
Je fais un lien comme ceci:
<a href="article.php?corpspag=texte.txt">Lien</a>
Selon le principe pour cibler sur un includ() de ce tutorial:
http://www.phpdebutant.org/article68.php
Mais sa ne fonctionne pas, quelqu’un aurait une solution ?

Re: Affichage du contenu d’un fichier.txt dans une cellule d

Posté : 16 janv. 2006, 09:10
par mario
Mais sa ne fonctionne pas, quelqu’un aurait une solution ?
Soit corpspag n'est pas défini, soit le fichier n'existe pas, soit il n'est pas autorisé en lecture.
<?php
if ( (isset($_GET['corpspag'])) && (file_exists($_GET['corpspag'])) && (is_readable($_GET['corpspag'])) ){
   $fp = file_get_contents($_GET['corpspag']);
   echo $fp;
}
else
{
   echo '-------------Erreur-----------------';
}
?>
http://fr3.php.net/isset
http://fr3.php.net/manual/fr/function.file-exists.php
http://fr3.php.net/manual/fr/function.is-readable.php


edit: Ou $fp n'est pas correctement encadré dans ton tableau html ( entre <td> et </td> ).
si ma solution ne fonctionne pas, montre moi un bout de code

Posté : 16 janv. 2006, 19:12
par phpdog
Bonjour mario et merci beaucoup :wink:

Le code ne fonctionne pas.

Posté : 16 janv. 2006, 20:08
par Cyrano
phpdog, j'ai parcouru très rapidement et simplement vu ta réponse, je n'ai même pas besoin de lire le reste du sujet : "le code ne fonctionne pas", qu'est-ce que tu veux qu'on y fasse ? Si c'est tout ce que tu as comme élément pour qu'on puisse t'aider, tu n'obtiendras pas grand chose. Réfléchis donc 5mn : comment veux-tu qu'on sache ce qui se passe ?

On le dit et on le répère tous les jours : soyez aussi précis que possible et argumentez vos questions. Précisez les messages d'erreur que vous obtenez, donnez tous les éléments pertinents nous permettant de comprendre votre situation: "J'ai fait ceci avec tel code et il se passe ça, j'obtiens tel message d'erreur, ..." : il faut pas un doctorat pour comprendre ça quand même?

La fabrique de boules de cristal est en faillite depuis la dernière inquisition et on ne retrouve plus de quoi se lancer dans l'art divinatoire.

Posté : 16 janv. 2006, 20:30
par phpdog
Bonjour :wink:

Je précise:
Alors voila j'ai un tableau avec un code php qui permet d'afficher le contenu d'un fichier.txt:
<table width="200" border="2" bordercolor="#333333" bgcolor="#666666" style="width:100%">
  <tr>
    <td style='border-width:0'>		
	<? 
      if(!$fp = file_get_contents('texte.txt')) 
        echo '!!! Erreur sur le page !!!'; 
       else  
        echo $fp;
    ?>
    </td>
  </tr>
</table>
Je voudrai pouvoir avec un lien changer de fichier.txt, un lien un peut comme sa:
<a href="article.php?corpspag=texte.txt">Lien</a>
J'ai esayer comme ceci:
<table width="200" border="2" bordercolor="#333333" bgcolor="#666666" style="width:100%">
  <tr>
    <td style='border-width:0'><?php 
if ( (isset($_GET['corpspag'])) && (file_exists($_GET['corpspag'])) && (is_readable($_GET['corpspag'])) ){ 
   $fp = file_get_contents($_GET['corpspag']); 
   echo $fp; 
} 
else 
{ 
   echo '-------------Erreur-----------------'; 
} 
?>
    </td>
  </tr>
</table>
Mais le liens ne fonctionne pas, pas de message d'erreur

Posté : 17 janv. 2006, 09:51
par Cyrano
Regarde, j'ai faot ça en local et si le fichier est bien au même niveau que ma page dans la structure des fichiers, ça fonctionne parfaitement :
<?php
echo("<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" xml:lang="fr" />
<title>Lecture d'un fichier texte</title>
</head>
<body>
<?php
if(isset($_GET['envoi']))
{
?>
<table width="200" border="2" bordercolor="#333333" style="width:100%; background-color: #666666; color: #ccc">
  <tr>
    <td style='border-width:0'>
<?php
    if ( (isset($_GET['corpspag'])) && (file_exists($_GET['corpspag'])) && (is_readable($_GET['corpspag'])) )
    {
        $fp = file_get_contents($_GET['corpspag']);
        echo $fp;
    }
    else
    {
        echo '-------------Erreur-----------------';
    }
?>
    </td>
  </tr>
</table>
<?php
}
?>
<form action="<?php echo($_SERVER['PHP_SELF']); ?>" method="get">
<fieldset>
<legend>Inscrivez un nom de fichier</legend>
<label>Inscrire un nom de fichier : <input type="text" name="corpspag" id="corpspag" value="" /></label><br />
<input type="submit" name="envoi" id="envoi" value="Envoyer" />
</fieldset>
</form>
</body>
</html>

Posté : 17 janv. 2006, 18:13
par phpdog
Bonjour et merci beaucoup :wink:

Mais le code que vous m'avez doner fonctionne avec un formulaire je ne comprend pas.

Posté : 17 janv. 2006, 18:51
par Cyrano
Qu'est-ce que tu ne comprends pas ?

Posté : 17 janv. 2006, 19:01
par phpdog
Pour quoi vous avez ajouter un formulaire ?

Je vouslai un simple lien

Posté : 17 janv. 2006, 19:09
par Cyrano
Pour les besoins du test, j'ai fait un formulaire, ça marcherait aussi bien avec un lien paramétré : as-tu fait l'essai ?

Posté : 17 janv. 2006, 19:11
par phpdog
Ben oui, chez moi sa marche même pas avec le formulaire.

Posté : 17 janv. 2006, 19:12
par Cyrano
Alors le problème est résolu ?

Posté : 17 janv. 2006, 19:15
par phpdog
Ben non si sa marche pas

Posté : 17 janv. 2006, 19:21
par Cyrano
:evil: Bon, tu te décides là :?: ça marche ou ça marche pas : si ça ne marche pas, tu obtiens quoi : ça devient pénible là !

Posté : 17 janv. 2006, 19:24
par phpdog
J'ai jamais dit que sa marcher :shock:

Aucun message d'erreur