Page 1 sur 2
"/n" ne fonctionne pas...
Posté : 29 juil. 2005, 17:35
par troudball
Salut à tous,
J'ai un petit problème et je ne sais pas d'ou çà vient, je souhaite exporter des commandes clients dans un fichier text ($fp) mais dans le fichier teste "/n" est représenté par un carré blanc, et il n'y pas le retour à la ligne qui devrais se faire...
$outputstring = $date."\t".$qttpasta." pasta\t".$qttpane." pane\t".$qttpiselli." piselli\t€".$totalsoldi."\t".$indirizzo."\n";
fwrite($fp, $outputstring);
Quelqu'un peut-il m'aider?
Merci d'avance!!
A+
Posté : 29 juil. 2005, 17:52
par Ripat
Windows "\r\n"
Linux "\n"
Posté : 29 juil. 2005, 18:19
par zeus
Avec fopen, \n suffit.
Mais si tu as un carré blanc, c'est qu'il faut que tu changes d'éditeur de texte, ton bloc note n'est pas suffisant
Essaye, notepad
Posté : 30 juil. 2005, 22:07
par Invité
Avec fopen, \n suffit.
Mais si tu as un carré blanc, c'est qu'il faut que tu changes d'éditeur de texte, ton bloc note n'est pas suffisant
Essaye, notepad
Hmmm, pas certain. Je dirais plus comme Ripat que cela dépend du système d'exploitation et non de la fonction utilisée. Je tourne sous FreeBSD à la maisons et \n suffit, tandis qu'au travail, je dois utiliser \r\n pour avoir les retours de lignes (dans bloc-note par exemple).
Posté : 30 juil. 2005, 22:11
par stukov
Grrr il semble que mon navigateur n'ait pas gardé son cookie assez longtemps. Peu importe.
Je remarque aussi troudball que tu fais /n au lieu de \n. N'oublie pas qu'il faut utiliser des anti-slashs pour avoir l'effet de la séquence d'échapement.
Posté : 01 août 2005, 10:12
par troudball
Salut à tous et merci pour vos réponses :
Petite précision, je suis sur windows XP...(et oui, je sais...)
Alors faisons le point :
si je fais /n au lieu de \n, \n est considéré comme chaine de caractère, donc s'affiche et donc pas de retourligne...
\r\n, en fait fonctionne très bien!!! le retour à la ligne se fait comme prévu!
Mais dites moi... çà ne va pas me poser des problèmes de portabilité si je met mon projet sur un serveur Linux?
D'autre part, j'ai remarqué des choses bizarre :
premièrement, les tabulations n'ont pas toutes la meme longueur (des fois deux champs ne se retrouve séparés que par un espace...?).
De meme les tabulations ne s'affiche pas de la meme manière (toujours au niveau de la longueur) en fonction du programme avec le quel j'ouvre le fichier texte...
Deuxièmement et c'est un peu plus chiant : il y a un décalage au niveau des tabulations si pour un meme champs (sur deux commandes différentes) le nombre saisi est à 1,2 ou 3 (ou +) chiffres.
exemple :
Code : Tout sélectionner
09:58, 1st August 123 pasta 456 pane 789 piselli €20016 12345
09:58, 1st August 789 pasta 456 pane 123 piselli €83952 45685
10:11, 1st August 45 pasta 45 pane 98 piselli €5342 45985
Lexique Italien...
pasta = pates
pane = pain
piselli = petit pois (çà veut aussi dire zizi

)
Merci d'avance pour votre aide!!
A+
Posté : 01 août 2005, 10:23
par mere-teresa
- premièrement, les tabulations n'ont pas toutes la meme longueur (des fois deux champs ne se retrouve séparés que par un espace...?).
De meme les tabulations ne s'affiche pas de la meme manière (toujours au niveau de la longueur) en fonction du programme avec le quel j'ouvre le fichier texte...
- Deuxièmement et c'est un peu plus chiant : il y a un décalage au niveau des tabulations si pour un meme champs (sur deux commandes différentes) le nombre saisi est à 1,2 ou 3 (ou +) chiffres.
Pour le 1er: ben oui certains programmes convertissent els tabulations en espaces, comme c'est gentil à eux. Cela se règle dans les Préférences en général.
Pour le 2e souci : en quoi ça te gêne finalement ?
Posté : 01 août 2005, 10:48
par troudball
pour la deuxième, c'est juste pour une question de visibilité mais c'est vrai que dans le fond, c'est pas un gros problème...
pour la première, est-ce normal que dans un meme programme, une fois la tabulation est un espace, plus d'un espace (variable...)?
Enfin peutx-tu m'en dire un peu plus sur :
si je fais /n au lieu de \n, \n est considéré comme chaine de caractère, donc s'affiche et donc pas de retourligne...
\r\n, en fait fonctionne très bien!!! le retour à la ligne se fait comme prévu!
Mais dites moi... çà ne va pas me poser des problèmes de portabilité si je met mon projet sur un serveur Linux?
Merci
A+
Posté : 01 août 2005, 10:51
par mere-teresa
Pour le serveur Linux, si tu utilises les retours à la ligne tout ira bien, je crois.
Pour les programmes, cela se règle dans les Préférences, je t'ai dit. ET c'est pas "normal", c'est "comme ça" et c'est pénible.
Posté : 01 août 2005, 12:43
par troudball
oui mais les retours de ligne /r/n fonctionnent aussi sous Linux? sinon je dois utiliser /n mais çà ne fonctionne pas sur mon sistème windows...

Posté : 01 août 2005, 14:22
par Cyrano
Ça ne fonctionnera pas du tout tant que tu confondras "/" et "\"
Posté : 01 août 2005, 14:39
par mere-teresa
Ça ne fonctionnera pas du tout tant que tu confondras "/" et ""
Je n'osais pas le dire 
Posté : 01 août 2005, 14:54
par Cyrano
Ça ne fonctionnera pas du tout tant que tu confondras "/" et ""
Je n'osais pas le dire 
Ose
mere-teresa, ose sans retenue

Posté : 01 août 2005, 15:44
par troudball
j'ai pourtant essayé /n et \n, avec ou sans guillemets simples ou doubles... quel est la syntaxe exacte?
Posté : 01 août 2005, 15:47
par raptor