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 01/02/2007, 19h36   #1
Nouveau Membre du Club
 
Inscription : février 2006
Messages : 115
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 115
Points : 27
Points : 27
Par défaut Créer un fichier texte qui enregistre en fur et a mesure avec un input

bonjour, j'voudrais creer ou avoir un script en rapide, pour que sa fait come ceci:

-Page1.php
-Formulaire d'un input

-page2.php
-Creation du .txt


alors voila j'ai deja creer tout ce systeme sa marche impeccable mais si je tape "0001" sa va l'enregistré dans le .txt mais si je retape un autre "0002" sa va effacé le "0001" et mettre "0002" a la place alors que moi j'voudrais que sa le fait comme ceci dans le .txt


0001
0002
0003...

et que sa passe des lignes, il y a pas quelqu'un qui si connais vachement a sa pour me donné carrement le script qui fait passé les lignes dans le txt et qui n'efface rien??


Merci d'avance , Bonne soirée



ps: mon truc est comme sa actuellement:

Page1.php:
Code html :
1
2
3
4
<form method="post" action="Page2.php">
    <p><input type="text" name="enreg"></p>
    <p><input type="submit" name="formbutton1"></p>
</form>


Page2.php:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
<?php
$nom_fichier = "enreg.txt";
$fichier_ouvert = fopen($nom_fichier, 'w+'); 
fwrite($fichier_ouvert);
fputs($fichier_ouvert,$enreg. "/n");
fclose($fichier_ouvert);
?>
<html>
 
<head>
<body>
<p align="center">Enregistrement</p>
</body>
 
</html>
mecmec est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2007, 01h54   #2
Membre à l'essai
 
Inscription : décembre 2004
Messages : 36
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 36
Points : 24
Points : 24
utilise une boucle pour inserer ligne par ligne dans ton fichier

Sa donne ceci de tete :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
 
$nom_fichier = "enreg.txt";
$fichier_ouvert= @fopen($nom_fichier, "r");
// parcours le fichier ligne par ligne et le stock dans le buffer
if ($fichier_ouvert) {
   while (!feof($fichier_ouvert)) {
     $buffer += fgets($fichier_ouvert, 4096);
   }
// stock le resultat dans $enreg (je suppose fichier de sorti)
fputs($buffer,$enreg);
fclose($fichier_ouvert);
}
?>
voila mais la prochaine fois php.net est ton ami
cellestion est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2007, 02h10   #3
Membre expérimenté
 
Inscription : janvier 2007
Messages : 439
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 439
Points : 519
Points : 519
Bonsoir

De toute maniere il me semble que la maniere d'on tu ouvre ton fichier (w+)
efface les données ?? me trompe peut etre .
spawntux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/02/2007, 08h41   #4
Membre expérimenté
 
Développeur Web
Inscription : avril 2006
Messages : 430
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : avril 2006
Messages : 430
Points : 538
Points : 538
Tout à fait, le mode 'w+' ouvre le fichier (le créée s'il n'existe pas), tronque le contenu, et commence à écrire depuis le début.

L'idée serait donc d'ouvrir le fichier en mode 'a+', qui permet d'ajouter du contenu à la fin d'un fichier (qui sera créé s'il n'existe pas).
Pas besoin donc de relire l'entierté du contenu pour y ajouter les nouvelles infos, grâce à ce 'a+'

a+
__________________
Merci à Microsoft pour avoir transformé un métier relativement terne et basé sur une approche bêtement technique et rigoureuse des faits, en challenge quotidien, nécessitant une remise en question permanente à l'échelle du quart d'heure
bkill est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2007, 03h44   #5
Nouveau Membre du Club
 
Inscription : février 2006
Messages : 115
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 115
Points : 27
Points : 27
ok Merci sa marche impecc, j'suis pas un 100% pro en php mais j'me debrouille bien , mais j'ai un peu modifier une ligne sa fesait une erreur:


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
 
$nom_fichier = "enreg.txt";
$fichier_ouvert= @fopen($nom_fichier, "a+");
// parcours le fichier ligne par ligne et le stock dans le buffer
if ($fichier_ouvert) {
   while (!feof($fichier_ouvert)) {
     $buffer += fgets($fichier_ouvert, 4096);
   }
// stock le resultat dans $enreg (je suppose fichier de sorti)
fputs($fichier_ouvert,$enreg. "\n");
fclose($fichier_ouvert);
}
?>

fputs($fichier_ouvert,$enreg. "\n"); contre sa fputs($buffer,$enreg);


sa marche impec' , je vous en remerci
mecmec est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2007, 05h27   #6
Membre expérimenté
 
Inscription : janvier 2007
Messages : 439
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 439
Points : 519
Points : 519
Mais de rien
spawntux 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 01h42.


 
 
 
 
Partenaires

Hébergement Web