Ecrire dans un fichier

Eléphant du PHP | 355 Messages

19 nov. 2005, 18:24

Bonjour à tous :wink:

Je voudrai créer un script PHP qui permette d’écrire dans un fichier.
Quelqu’un connaît-il un tutoriale qui puisse m’aider ?

Eléphant du PHP | 440 Messages

19 nov. 2005, 18:25


Eléphant du PHP | 355 Messages

19 nov. 2005, 19:01

Bonjour DarkBlue et merci :wink:

Donc sur :
http://www.lephpfacile.com/cours/index.php?p=8
J’ai récupéré le script conteur de visite :
<?php
// Instruction 1 
$fp = fopen ("compteur.txt", "r+");
// Instruction 2
$nb_visites = fgets ($fp, 11);
// Instruction 3 
$nb_visites = $nb_visites + 1;
// Instruction 4
fseek ($fp, 0);
// Instruction 5
fputs ($fp, $nb_visites);
// Instrcution 6
fclose ($fp);
// Instrcution 7
echo 'Ce site compte '.$nb_visites.' visiteurs !';
?>
Puis j’y ai supprimer se qui ne m’intéresse pas :
<?php
$fp = fopen ("cible.txt", "r+");
fputs ($fp, azerty);
fclose ($fp);
?>
Le mot azerty est bien écrit dans le fichier cible.txt mais une erreur est renvoyée :

Code : Tout sélectionner

Notice: Use of undefined constant aerty - assumed 'aerty' in C:\easyPHP\www\ecrire\ecrire.php on line 5
Le fichier cible.txt doit être créer manuellement avant le lancement du script, n’y a-t-il pas moyen de le générer avec le script php se fichier cible.txt ?

ViPHP
ViPHP | 1380 Messages

19 nov. 2005, 19:15

fputs ($fp, 'azerty'); 
ripat

eSp
Eléphant du PHP | 56 Messages

19 nov. 2005, 19:16

Salut,

Essaie plutôt ça:
<?php 
$fp = fopen ("cible.txt", "w"); 
fputs ($fp, "azerty"); 
fclose ($fp); 
?> 
A noter aussi, que dans le cas où ton fichier n'existe pas, le script le créé automatiquement lorsque tu mets le mode 'w' !

;)

Eléphant du PHP | 440 Messages

19 nov. 2005, 19:20

r+ ouverture en lecture et écriture

w+ ouverture en lecture et écriture (la fonction crée le fichier s'il n'existe pas)

Eléphant du PHP | 355 Messages

19 nov. 2005, 20:20

Bonjour Ripat et merci :wink:

Effectivement s’été cela.


Bonjour eSp et merci :wink:

Merci beaucoup votre script en encore mieux.


Bonjour DarkBlue et merci :wink:

Eléphant du PHP | 355 Messages

19 nov. 2005, 20:29

Maintenant à partit de se script :
<?php 
$fp = fopen ("cible.txt", "w"); 
fputs ($fp, "azerty"); 
fclose ($fp); 
?>
Je voudrai créer une zone de texte dans la page Web ou l’utilisateur pourras entrer le texte à écrire dans le fichier texte.txt, sauriez vous m’aider ?

eSp
Eléphant du PHP | 56 Messages

20 nov. 2005, 12:47

Re,

Voici le formulaire d'entrée utilisateur:

Code : Tout sélectionner

<form action="write.php" method="POST"><p> Zone de texte :<br /> <textarea name="text"></textarea> <input type="submit" value="Soumettre la requête"> </p></form>
Puis le code du fichier write.php:
<?php 

//On récupère la zone de texte
$texte = $_POST['text']; 

//On vérifie si celle là est renseignée
if(empty($texte)) 
  { 

   print("<center>La '<b>zone de texte</b>' est vide !</center>"); 
   exit();
   
   } else {
	
   //Si elle n'est pas vide on écrit dans le fichier texte

   $fp = fopen ("cible.txt", "w"); 
   fputs ($fp, $texte); 
   fclose ($fp); 
   
   }
?> 
;)

Eléphant du PHP | 355 Messages

20 nov. 2005, 12:54

Bonjour eSp et merci beaucoup :wink:

Parfait merci.

Eléphant du PHP | 355 Messages

20 nov. 2005, 16:39

J'ai essayer de créer deux zone de texte commen ceci:
<form action="ecrire_2.php" method="POST"><p> 
Zone de texte :<br /> 
<textarea name="titre"></textarea> 
<textarea name="texte"></textarea> 
<input type="submit" value="Soumettre la requête"> 
</p></form>
<?php 



//On récupère la zone de texte 
$texte = $_POST['titre']; 

//On vérifie si celle là est renseignée 
if(empty($texte)) 
  { 

   print("<center>La '<b>zone de texte</b>' est vide !</center>"); 
   exit(); 
    
   } else { 
     
   //Si elle n'est pas vide on écrit dans le fichier texte 

   $fp = fopen ("titre.txt", "w"); 
   fputs ($fp, $texte); 
   fclose ($fp); 
    
   } 


//On récupère la zone de texte 
$texte = $_POST['texte']; 

//On vérifie si celle là est renseignée 
if(empty($texte)) 
  { 

   print("<center>La '<b>zone de texte</b>' est vide !</center>"); 
   exit(); 
    
   } else { 
     
   //Si elle n'est pas vide on écrit dans le fichier texte 

   $fp = fopen ("texte.txt", "w"); 
   fputs ($fp, $texte); 
   fclose ($fp); 
    
   } 



?> 
Mais sa plante, pouriez vous m'aider a adapter ?

Mammouth du PHP | 19672 Messages

20 nov. 2005, 16:51

Mais sa plante....
Ça nous aide considérablement comme description du problème :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 355 Messages

20 nov. 2005, 16:55

Désolé de se dérangement inutile, j'avai lancr la mauvais fichier dans le naviguateur :oops:

Sa marche parfaitement.

Mammouth du PHP | 19672 Messages

20 nov. 2005, 16:56

[Résolu] :?:
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 355 Messages

20 nov. 2005, 17:02

Tout a fait, j'ai mis le tag tout à l'heure :wink: