Création d’un script PHP qui affiche une image et le contenu

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Création d’un script PHP qui affiche une image et le contenu

par rami » 19 nov. 2005, 20:17

De rien ;)

par phpdog » 19 nov. 2005, 20:14

Merci beaucoup rami :wink:

Cela marche parfaitement bien maitenant :D

par rami » 19 nov. 2005, 19:57

Il faut mettre le code donné entre des balises PHP pour qu'il soit interprété! ;)
<?php
$nom = 'texte.txt';
if(is_file("./$nom"))
{  //le fichier existe bien
    //on recupere son contenu
    $contenu = file_get_contents($nom);
    echo $contenu;
}
else echo 'Le fichier '.$nom.' n\'a pas été trouvé!';
?>
ps: tu peux me tutoyer ;)

par phpdog » 19 nov. 2005, 19:54

Bonjour rami et merci :wink:

Votre code affiche une page contenant:

Code : Tout sélectionner

$nom = 'texte.txt'; if(is_file("./$nom")) { //le fichier existe bien //on recupere son contenu $contenu = file_get_contents($nom); echo $contenu; } else echo 'Le fichier '.$nom.' n\'a pas été trouvé!';

par rami » 19 nov. 2005, 19:51

Essaies ceci, c'est un peu plus simple:
$nom = 'texte.txt';
if(is_file("./$nom"))
{  //le fichier existe bien
    //on recupere son contenu
    $contenu = file_get_contents($nom);
    echo $contenu;
}
else echo 'Le fichier '.$nom.' n\'a pas été trouvé!';

par phpdog » 19 nov. 2005, 19:47

Comme ceci:
<? 
$fp = fopen("texte.txt","r");   //ouverture du fichier 

$text="" // iniotialisation de la variable qui va contenir le texte du fichier 

while($donnees = fgets($fp,4096))     //on boucle tant qu'on est pas a la fin du fichier 
{ 
   $text.=$donnees; 
} 
fclose($fp);                  //(3) 
//Affichage du résultat ----------- 
echo'Le fichier contient : '.$text""; 
?> 
Sa marche pas non plus.

par Truc » 19 nov. 2005, 19:34

il maque un point virgule
$text="";
c'est aussi bien comme ça, du moment que tu comprend le fonctionnement :wink:

par phpdog » 19 nov. 2005, 19:28

Comme ceci:
<? 
$fp = fopen("texte.txt","r");   //ouverture du fichier 

$text="" // iniotialisation de la variable qui va contenir le texte du fichier 

while($donnees = fgets($fp,4096))     //on boucle tant qu'on est pas a la fin du fichier 
{ 
   $text.=$donnees; 
} 
fclose($fp);                  //(3) 
//Affichage du résultat ----------- 
echo'Le fichier contient : '.$text; 
?> 
Le script me renvoi une erreur a la ligne 6.

Mais s'est pas grave je vien de trouver un script tout prés qui fonctionne parfaitement:
<? 
if(!$fp = file_get_contents('texte.txt')) //$fp est nul donc file_get_contents a échoué 
        echo 'La lecture du fichier a échoué !'; 


else //la lecture a été faite correctement, on affiche le résultat 
        echo $fp;
?>

par Truc » 19 nov. 2005, 19:19

il te manque une parenthse fermante a la ligne 3:

filesize("texte.txt") donne la taille du fichier complet, dans ce cas t'en aura pas besoin. A la place met 4096 (largement assez)

ensuiote il faut boucler sur la lecture du fichier, comme dans la doc sur fgets()
<?
$fp = fopen("texte.txt","r");   //ouverture du fichier

$text="" // iniotialisation de la variable qui va contenir le texte du fichier

while($donnees = fgets($fp,4096))     //on boucle tant qu'on est pas a la fin du fichier
{
   $text.=$donnees;
}
fclose($fp);                  //(3)
//Affichage du résultat -----------
echo'Le fichier contient : '.$text;
?>

par DarkBlue » 19 nov. 2005, 19:17

<? 
$fp = fopen("texte.txt","r");   //(1) 
$donnees = fgets($fp,filesize("texte.txt"));     //(2) 
fclose($fp);                  //(3) 
//Affichage du résultat ----------- 
echo'Le fichier contient : '.$donnees; 
?> 
autant pour moi j ai oublié une parenthese ! le code ci dessus est corrigé

par phpdog » 19 nov. 2005, 19:09

Merci pour votre patience :wink:

S'est bizzare ce code:
<? 
$fp = fopen("texte.txt","r");   //(1) 
$donnees = fgets($fp,filesize("texte.txt");     //(2) 
fclose($fp);                  //(3) 
//Affichage du résultat ----------- 
echo'Le fichier contient : '.$donnees; 
?> 
Renvoi l'erreur:

Code : Tout sélectionner

Parse error: parse error in C:\easyPHP\www\dd.php on line 3

par DarkBlue » 19 nov. 2005, 18:51

<? 
$fp = fopen("texte.txt","r");   //(1) 
$donnees = fgets($fp,filesize("texte.txt");     //(2) 
fclose($fp);                  //(3) 
//Affichage du résultat ----------- 
echo'Le fichier contient : '.$donnees; 
?> 
Plutot comme ceci

par phpdog » 19 nov. 2005, 18:48

Truc >>>>

Merci pour ces deux liens ils sont très intéressant, je met en favori.

DarkBlue >>>

Vous vouliez dire comme ceci :
<?
$fp = fopen("texte.txt","r");   //(1)
filesize("texte.txt")     //(2)
fclose($fp);                  //(3)
//Affichage du résultat -----------
echo'Le fichier contient : '.$donnees; 
?>
Par-ce que comme cela sa me renvoi une erreur.

par DarkBlue » 19 nov. 2005, 18:36

$donnees = fgets($fp,255); 
Dans cet instruction tu demande a php de lire les 255 premiers caracteres du fichier , il faut modifier cette valeur par exemple le remplacer par
filesize("texte.txt") 
pour lire tout le fichier

par Truc » 19 nov. 2005, 18:36

le mieux c'est de regarder la doc sur ces fonctions:
fopen()
fgets() avec un exemple qui va lire tous le fichier