Fichier et retour a la ligne

Résolu
eltaris Messages postés 22 Date d'inscription lundi 2 octobre 2000 Statut Membre Dernière intervention 26 octobre 2010 - 6 juin 2007 à 12:05
eltaris Messages postés 22 Date d'inscription lundi 2 octobre 2000 Statut Membre Dernière intervention 26 octobre 2010 - 6 juin 2007 à 13:27
Bonjour, je cherche à écrire quelques lignes dans mon fichier. Seulement, j'ai constaté qu'en écrivant plusieurs lignes avec fputs(), cela concatenait mes phrases sur la premiere ligne.
Apres avoir fait quelques recherches, j'ai vu que pour sauter une ligne, il fallait utiliser "\n".
Donc j'ai tapé le code suivant :

$fichier = fopen("Monfichier.txt", "a+");
fputs($fichier, $message);
fputs($fichier, "\n");
fclose($fichier);

Seulement quand j'ouvre le fichier texte, j'ai toujours mes phrases sur la premiere ligne du fichier.
J'aimerais donc savoir ce qui ne va pas dans mon code.

5 réponses

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
6 juin 2007 à 12:19
Salut

\r\n ca designe un retour a la ligne sous windows... mais faut le mettre apres chaque phrase... pas a la fin du fichier...

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
3
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
6 juin 2007 à 13:00
Comme Coucou te l'a dit, sous Windows, c'est \r\n les retours chariots, pas seulement \n.
Donc si tu ouvres ton fichier sour Windows, sous un éditeur basique, normal que tu ne vois pas tes retours chariots.
3
eltaris Messages postés 22 Date d'inscription lundi 2 octobre 2000 Statut Membre Dernière intervention 26 octobre 2010
6 juin 2007 à 12:50
Non mais en fait j'ecris les phrases une par une (en fait, ma phrase est contenu dans $message).
A chaque fois que j'ecris une ligne, j'execute ce code (comme j'ecris relativement peu de lignes, j'ouvre et ferme le fichier a chaque fois que je veux rajouter une ligne dans le fichier).
Donc normalement, le "\n" se trouve bien après chaque phrase, et pas seulement à la fin du fichier.
Ou alors il y a un truc que je n'ai pas bien saisi.
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
6 juin 2007 à 13:03
Salut

ouvrir le fichier pour chaque phrase.... c'est pas l'ideal.. tu devrais l'ouvrir une bonne fois pour toute...

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
eltaris Messages postés 22 Date d'inscription lundi 2 octobre 2000 Statut Membre Dernière intervention 26 octobre 2010
6 juin 2007 à 13:27
Ah ok merci, effectivement, je viens de tester avec \r\n, ça marche.
Pour le coup d'ouvrir le fichier a chaque fois, je sais que ce n'est pas optimisé, mais comme je l'ai dit, le fichier contiendra peu d'information, et puis surtout ce ne sera pas un "vrai" site, mais un site reservé à 4-5 personnes (en fait, c'est une page qu'on utilisera pour nos parties de jdr :p)
0
Rejoignez-nous