Retour à la ligne avec fwrite

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Retour à la ligne avec fwrite

par Henri » 12 sept. 2006, 14:10

Normalement le retour à la ligne se fait avec deux caractères (ceci date du temps béni des téléscripteurs) :
CR : retour au début de la ligne (même ligne et retour en colonne 1)
LF : passage à la ligne suivante (même colonne et passage à ligne+1)

Vous pourrez le vérifier quand vous faites une saisie dans un textarea : chaque appui sur la touche ENTER est transformé en deux caractères (du moins sous Windows).

Pas mal d'éditeurs de texte se contentent désormais d'un seul caractère (généralement le LF) pour faire les deux actions du retour au début de la ligne suivante. Mais pas des logiciels "primaires" comme Notepad. Par contre, Wordpad n'a pas de souci

On écrira donc
fwrite ($fichier, "Le texte\r\n");
http://www.php.net/manual/fr/language.t ... tax.double

par Invité » 12 sept. 2006, 13:39

C est plus un probleme de concatenation , j ai regardé, modifié mais je ne trouve toujours pas.

Code : Tout sélectionner

$xml .= '<pays>';"\n";

par Ryle » 12 sept. 2006, 11:57

Je ne sais pas comment mettre le \n ?

Code : Tout sélectionner

$xml .= '<pays>';."\n"
???? (celui ci ne marche pas)
Il faut effectivement de mettre le \n entre guillemets pour qu'il soit correctement interprété, mais cela ne te dispense pas de respecter la syntaxe de php.

Prend le temps de lire le message d'erreur au lieu de dire que ton code ne marche. Je suis sur que des parse error tu en as déjà eu souvent et que tu sais comment corriger la plupart de ces erreurs d'innatention ;)

par zenabN » 12 sept. 2006, 11:48

J ai le meme soucis, lors de la creation d un fichier xml

Code : Tout sélectionner

$xml .= '<pays>'; $xml .= '<Name>'.$row['Code_Pays'].'</Name>'; $xml .= '<Src>'.$row['Url'].'</Src>'; $xml .= '<Published>YES</Published>'; $xml .= '</pays>';
Je ne sais pas comment mettre le \n ?

Code : Tout sélectionner

$xml .= '<pays>';."\n"
???? (celui ci ne marche pas)

et j ouvre le fichier avec notepad.

Merci

par Truc » 02 juil. 2006, 16:22

a noter que la concaténation de "\n" était obligatoire étant donné que tu as débuté avec des apostrophes pour la chaine. Dans le cas de l'utilisation de guillemets:
$somecontent .= "\$titre ='".$titre."';\n"; 

par bunk » 02 juil. 2006, 16:16

Super ! merci beaucoup !

par Truc » 02 juil. 2006, 16:14

non pour que le saut de ligne \n soit pris en compte il faut obligatoirement le placer entre guillemets => "\n"

Pour la concaténation avec la virgule elle ne fonctionne qu'avec un echo pas une affectation de varaible:

Essaie avec:
$somecontent .= '$titre ="' . $titre . '";'."\n";

par bunk » 02 juil. 2006, 15:56

ca ne fonctionne pas!

j'ai pas beaucoup de ligne à écrire mais comme c'est des variables... si je met \n il me l'ecrit dans le fichier et je ne veux pas car cela rend mes variables inutilisables.

par jojolapine » 02 juil. 2006, 15:52

pourquoi une virgule au mileu?
$somecontent = 'titre ="'.$titre.'"\n';

par bunk » 02 juil. 2006, 15:30

en fait j'ai essayé mais ca ne passe pas, je dois pas le mettre au bon endroit
exemple :
$somecontent .= '$titre ="' . $titre . '";',"\n";

par Truc » 02 juil. 2006, 15:28

Salut,

ajoute "\n" entre guillemets en lieu et place d'un saut de ligne.

Retour à la ligne avec fwrite

par bunk » 02 juil. 2006, 15:18

Bonjour,

je ne trouve pas sur le forum ni php.net le moyen de sauter des lignes avec fwrite

Si vous avez une idée parcque la il ecrit tout sur une ligne et du coup rien ne fonctionne!

D'avance merci