PHP ajout Texte dans fichier TXT

Résolu
malabarbe Messages postés 136 Statut Membre -  
 Gilues -
Bonjour,

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

3 réponses

vlmath Messages postés 833 Statut Contributeur 160
 
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
malabarbe Messages postés 136 Statut Membre 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);
?>
0
vlmath Messages postés 833 Statut Contributeur 160
 
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
malabarbe Messages postés 136 Statut Membre 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 ?
0
Gilues
 
Fais comme si tu passes à la ligne:
$txt =
" *** Manquante ***";
0
vlmath Messages postés 833 Statut Contributeur 160
 
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 ...
0
malabarbe Messages postés 136 Statut Membre 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
0