Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/02/2008, 22h16   #1
Candidat au titre de Membre du Club
 
Inscription : février 2008
Messages : 66
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 66
Points : 13
Points : 13
Par défaut Afficher le contenu d'un fichier

Bonjour tout le monde
Je cherche à faire quelque chose de simple : extraire le contenu d'un fichier et le faire apparaître à l'écran
Je suis allé vérifier sur la facq fichiers que ce que j'avais fait n'était pas complètement à côté de la plaque... et ailleurs aussi...
je vous copie ici le petit script que j'ai écrit et qui ne fonctionne pas
il y a un truc qui m'échappe totalement
mercie de vos lumières

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
if(!isset($_POST['form']))
{
echo "<form action=\"voir.php\" method\"POST\">
Non du fichier : <input type=\"text\" name=\"nom\" value=\"fichier.txt\"> - 
<input type=\"submit\" value=\"voir\">
</form> <br />";
}
else
{
$lect=fopen($_POST['nom'],"r");
if($cont=fread($lect,999999))
{
echo "$cont";
print "hello";
}
else
{
echo "Impossible de lire le fichier";
}
fclose($lect);
}
?>
paulriluma est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2008, 09h07   #2
Membre émérite
 
Avatar de julien.63
 
Inscription : décembre 2005
Messages : 1 322
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 1 322
Points : 981
Points : 981
Envoyer un message via MSN à julien.63
salut
ce script ci-dessous fonctionne.
tu avais oublié le = dans le method="POST" du formulaire et il semble se mettre en GET par défaut...
De plus, ce test :
Code :
if(!isset($_POST['form']))
est inutile car la balise form n'apparait pas dans le $_POST. Pour t'en convaincre et voir ce que tu as à ta disposition après soumission d'un formulaire tu peux faire :
De coup, la première condition était toujours vraie.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
if(!isset($_POST['nom'])){
	echo "<form action=\"test.php\" method=\"POST\">
	Non du fichier : <input type=\"text\" name=\"nom\" value=\"fichier.txt\"> - 
	<input type=\"submit\" value=\"voir\">
	</form> <br />";
}
elseif (isset($_POST['nom'])){
	$filename = $_POST['nom'];
	$lect=fopen($filename,"r");
 
	if($cont=fread($lect,filesize($filename))){
		echo "$cont";
	}
 
	else{
		echo "Impossible de lire le fichier";
	}
 
	fclose($lect);
}
?>
julien.63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2008, 10h23   #3
Candidat au titre de Membre du Club
 
Inscription : février 2008
Messages : 66
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 66
Points : 13
Points : 13
Par défaut correction du code

Bonjour Julien
et merci de cette indication
je vais de ce pas me remettre au travail
je n'avais pas vu effectivement l'absence du =
et avais mal calculer mes tests
bon
à suivre
merci encore
Paul
paulriluma est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2008, 19h37   #4
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Salut

Deux rappels :
  • Il existe une fonction readfile() qui fait exactement ce que tu cherches à faire ;
  • Fais très très attention de ne jamais utiliser ce code tel quel, car il permet à n'importe qui d'afficher n'importe quel fichier de ton serveur, même les fichiers de configuration.
Quelques liens pour complémenter :
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/02/2008, 23h34   #5
Candidat au titre de Membre du Club
 
Inscription : février 2008
Messages : 66
Détails du profil
Informations forums :
Inscription : février 2008
Messages : 66
Points : 13
Points : 13
Par défaut ou la la

Bon
merci yogui
pour l'instant j'en suis à faire des petits scripts pour faire mes premiers pas en php...
en parlant du code récupérable
tu veux parler je suppose du petit script que m'a corrigé Julien ?

l'idée c'était de faire une fonction me permettant de lire le fichier créer en sorti d'un autre script faisant rentrer des données avec un formulaire...
bon
il faut encore que je mette au point les fonction qui vont m'écrie le fichier correctement avec des sauts à la ligne entre chaque entrée de donnée etc
bref...
bon je vais voir la fonction readfile merci de cette indication
à plus
paulriluma est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/02/2008, 00h28   #6
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
C'est bien cela fais des essais. Avant de mettre ce script sur un site sur Internet, fais de nombreux tests avec ce que je t'ai indiqué. Ne mets pas ce script sur Internet sans savoir ce que tu fais
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h53.


 
 
 
 
Partenaires

Hébergement Web