PHP ajout Texte dans fichier TXT [Résolu/Fermé]

Signaler
Messages postés
127
Date d'inscription
jeudi 20 septembre 2007
Statut
Membre
Dernière intervention
14 septembre 2016
-
 Gilues -
Bonjour,

Comment en PHP, écrire un texte a la fin de la
dernière ligne d'un fichier TXT ?

3 réponses

Messages postés
793
Date d'inscription
vendredi 20 octobre 2006
Statut
Contributeur
Dernière intervention
4 septembre 2011
155
Salut,

Pour écrire à la fin d'un fichier, tu dois l'ouvrir avec l'option "a" :
<?php
if( !($fp = fopen('fichier.txt', 'w')) ) return;

fprintf( $fp, "ton texte" );
?>


@Bientôt
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 61012 internautes nous ont dit merci ce mois-ci

Messages postés
127
Date d'inscription
jeudi 20 septembre 2007
Statut
Membre
Dernière intervention
14 septembre 2016
1
Non seulement cela n'écrit rien, mais ça vide mon fichier Mon code :

<?PHP
$fp = fopen("stats/compteur_num_vu.txt","r+");
$txt = " *** Manquante ***";
if( !($fp = fopen('stats/compteur_num_vu.txt', 'w')) ) return;
fprintf( $fp, $txt );
fputs($fp);
fclose($fp);
?>
Messages postés
793
Date d'inscription
vendredi 20 octobre 2006
Statut
Contributeur
Dernière intervention
4 septembre 2011
155
A oui, je vois pourquoi ... désolé.

J'ai dit de l'ouvrir avec l'option a, mais j'ai écrit w ....... désolé
<?php
if( !($fp = fopen('fichier.txt', 'a')) ) return;

fprintf( $fp, "ton texte" );
?>


Donc :
<code><?PHP
$txt = " *** Manquante ***";
if( ($fp = fopen('stats/compteur_num_vu.txt', 'w')) ) fprintf( $fp, $txt ); // modifié un chouia ... :D
fclose($fp);
?>
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 61012 internautes nous ont dit merci ce mois-ci

Messages postés
127
Date d'inscription
jeudi 20 septembre 2007
Statut
Membre
Dernière intervention
14 septembre 2016
1
Ok, c'est bon

mais cela ajoute une ligne dans le fichier
Alors que je voudrais écrire a la fin de la dernière ligne du fichier

Mon code :

<?PHP
$fp = fopen("stats/compteur_num_vu.txt","a");
$txt = " *** Manquante ***\n";
fwrite($fp, $txt);
fclose($fp);
?>

Peut-etre, oter au préalable le dernier caractère du fichier (saut de ligne)

Comment faire ?
Fais comme si tu passes à la ligne:
$txt =
" *** Manquante ***";
Messages postés
793
Date d'inscription
vendredi 20 octobre 2006
Statut
Contributeur
Dernière intervention
4 septembre 2011
155
Essaye de mettre un \b avant ton message (c'est un déplacement gauche du curseur ...), mais je ne suis pas sur du tout que ça marche ...
Messages postés
127
Date d'inscription
jeudi 20 septembre 2007
Statut
Membre
Dernière intervention
14 septembre 2016
1
Non, le \b avant ton message ne marche pas

J'ai résolu mon PB en otant le saut de ligne a chaque
nouvel enregistrement

Merci à toi