Tom's Guide > Forum > Programmation > écrire dans un fichier avec un script php

écrire dans un fichier avec un script php

Forum Programmation : écrire dans un fichier avec un script php

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour! Voila mon problème surment simple pour la plus par d'entres vous. Avec ce code quand il écrit dans le fichier il écrie par dessus le texte existant. Moi je voudrais qu'il aille a la ligne pour écrire en dessous! (Genre comme quand on appui sur entrée).Merci

Le CODE se trouve ici car IDN m'empêchait de pouvoir le poster

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

php.net fopen

'a' Ouvre en écriture seule ; place le pointeur de fichier à la fin du fichier. Si le fichier n'existe pas, on tente de le créer.

Répondre à rongeur-sauvage

ca sent le gars qui a juste lu le titre ! :P

Pour infos, dans ton code, rajoute un (ou plusieurs) fputs($user, "\n" ); après le fopen pour ajouter un saut de ligne.
Si c'est du html il faut faire un fputs($user, "
\n" );

Répondre à bluedylc

Hmmm en faite je voudrais faire un saut de ligne pas pour une page html ou php mais pour un simple fichier txt qui me serre de "base de donnée" ou je stocke des infos, et je les rajoutes a la suite par un formulaire. Donc ce que je voudrais faire ces qu'au lieu qu'il me remplace la ligne, ba il rajoute a la ligne du dessous etc...

Répondre à neb93

// j'ouvre le fichier
$user= fopen('. ./dossier/chemin_du_fichier.txt', 'a');

fputs($user, "le text a écrire\n" );

// et la je ferme le fichier
fclose($user);
?>

c'est le .. qui bloque idn (véridique)

Répondre à rongeur-sauvage

c'est moi, ou j'ai répondu à la question et vous continuez à discourir quand meme ?

Répondre à bluedylc

Malheureusement ça ne marche toujours pas!! J’ais mis le "\n" juste après une variable est-ce que cela peu gêné?

Répondre à neb93

le \n doit etre entre guillemets . si tu les mets a la fin, ça signifie qu'il saute une ligne a la fin.
c'est logiquement ce que tu dois faire si ton fichier est vide : tu ecris ta premiere phrase et tu sautes une ligne.

si ton fichier contient deja du texte, alors le \n doit etre au debut. tu commences par sauter une ligne puis tu ecris.

Répondre à rongeur-sauvage

ben... montre ton code.

De tout facon faut le mettre _avant_ ce que tu veux écrire hein.
Sinon le saut de ligne il est _après_.

Répondre à bluedylc

Code :
  1. <?php
  2. // 1 : on ouvre le fichier
  3. $user = fopen(". ./prive/users.txt", "a" );
  4. fputs($user,"\n/var/www/free.fr/3/a/slasher360/ftp/dossier;http://slasher360.free.fr/ftp/dossier/;$login;$pass" );
  5. // 3 : quand on a fini de l'utiliser, on ferme le fichier
  6. fclose($user);
  7. ?>



transforme . . en .. dans fopen()
le "a" que tu as zappé dans fopen est tres important, c'est lui qui indique a php de reprendre le fichier a la fin (contrairement à "r+" )
le \n signifie new line (nouvelle ligne). Placé entre deux guillemets, il provoque un retour à la ligne à l'endroit où il est placé.
lit cet article de phpdebutant pour une meilleure compréhension (ça parle d'echo() mais est tout a fait applicable à fputs()/fwrite())

Répondre à rongeur-sauvage

Superrrr merciiii sa marche!! C’était laborieux lol! Mais merci! (Je tien aussi a précisé que c'est la 2eme foi que tu m'aides a résoudre un problème (en php) lol merci! (merci aussi a bluedylc pour son aide )

Répondre à neb93

Code :
  1. <?php
  2. // 1 : on ouvre le fichier
  3. $user = fopen(". ./prive/users.txt", "a" );
  4. fputs($user, "\n" );
  5. fputs($user,"var/www/free.fr/3/a/slasher360/ftp/dossier;http://slasher360.free.fr/ftp/dossier/;$login;$pass" );
  6. // 3 : quand on a fini de l'utiliser, on ferme le fichier
  7. fclose($user);
  8. ?>



Je sais que ton problème est résolu, mais moi qui avait conseillé de faire ca, je ne comprends pas pourquoi tu disais que ca ne marchait pas.

Répondre à bluedylc

Cela ne marchait pas car je ne savais pas qu'il fallait mettre "a" à fopen et non r+! Mais merci!

Répondre à neb93
Tom's Guide > Forum > Programmation > écrire dans un fichier avec un script php
Aller à :

Il y a 2049 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens