> Tous les forums > Forum des Webmasters
 Sauter une ligne dans un fichier texte.Sujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
vince42
  Posté le 06/04/2011 @ 18:36 
Aller en bas de la page 
Petit astucien

Bonjour,

Alors voilà, j'ai un script PHP qui me génère un fichier texte "liste.txt"

<?php
.....
//*creation d'un texte
$doc = 'liste.txt';
$doctxt = fopen($doc, 'w+');
$txt = "Liste dico WPA\n";

// On récupère le contenu de la table
$reponse = $bdd->query('SELECT * FROM code');

// On affiche l'entrée
while($donnees = $reponse->fetch())
{
$txt .= ''.$donnees['pass'].'\n' ;
}
fputs($doctxt, $txt);
fclose($doctxt);
//*/
?>


Mon fichier est bien crée et le contenu est bien présent.
Mon problème c'est que je n'ai aucun saut de ligne. Tout est à la suite. Moche.
J'ai vu à droite et à gauche que le retour à la ligne se faisait avec "\n ou \r".
Certain mettent les deux "\n\r", d'autre un double anti-slash "\\n ou \\r ou même \\n\\r".
J'ai un peu tout testé mais rien n'y fait.
J'ai même un bouquin sur le PHP qui dit la même chose :
\n : Saut de ligne
\r : Retour chariot

La doc PHP aussi montre ca :

Manuel PHP

camilord at kagayan dot com 13-Feb-2009 03:47
Here's a sample using fputs() function... it may be useful like making logs visiting your website by recording the IP address.

Code : PHP - Sélectionner
<?php

// file container where all texts are to be written
$fileContainer = date("MjY").'.log';

// open the said file
$filePointer = fopen($fileContainer,"w+");

// text to be written in the file
$logMsg = "You are located at ".$_SERVER["REMOTE_ADDR"]."\n";

// below is where the log message has been written to a file.
fputs($filePointer,$logMsg);

// close the open said file after writing the text
fclose($filePointer);

?>


that's it... :)

-- camilord



La source : http://fr.php.net/manual/fr/function.fputs.php

Je ne comprend pas trop pourquoi ca ne marche pas.

Merci



Modifié par vince42 le 06/04/2011 18:40
Publicité
Jean-Pierre
 Posté le 06/04/2011 à 20:49 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

y.bli
 Posté le 07/04/2011 à 16:10 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Bonjour,

Essaie :

$txt = $donnees['pass']."<br />" ;

@+



Modifié par y.bli le 07/04/2011 16:14
vince42
 Posté le 07/04/2011 à 17:10 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour,

La solution "nl2br()" fonctionne niquel. Mais dans mon fichier texte je me retrouve avec mon saut de ligne comme je le voulais et un <br/> a chaque bout de ligne.

Celui la j'en veut pas.

J'ai utiliser une autre solution trouver sur un forum qui marche niquel aussi et sans mettre un <br/> en fin de ligne.

<?php
$doc = 'liste.txt';
$txt = 'Liste dico WPA'.PHP_EOL;
$reponse = $bdd->query('SELECT pass FROM code');
while($donnees = $reponse->fetch(PDO::FETCH_ASSOC))
$txt .= $donnees['pass'].PHP_EOL;
file_put_contents($doc, $txt);
?>

Je ne comprend pas trop ce code inconnu, mais ca mache.

Merci

Jean-Pierre
 Posté le 07/04/2011 à 17:26 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Sinon je bidouille aussi via :

echo ' <p>'."\n";
echo ' </p>'."\n";

Pas très académique mais

vince42
 Posté le 07/04/2011 à 18:47 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Oki merci. Je prend PHP_EOL qui est simple a utiliser et facilement déchiffrable quand on lit le code.

Merci

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
259,00 €PC Ankermann (Intel Pentium Dual Core, 8Go RAM, SSD 480Go, Win 10 Pro + Office 365) à 259 € livré
Valable jusqu'au 21 Mai

Amazon fait une promotion sur l'ordinateur de bureau Ankermann Silent PC Work à 259 € livré. Le PC est équipé d'un processeur Intel Pentium dual core à 2.7 GHz, de 8 Go de RAM, d'un SSD de 480 Go, d'un disque dur de 500 Go, d'un lecteur DVD, d'un lecteur de carte mémoires et tourne sous Windows 10 Pro 64 bits FR. Un abonnement d'un an à Microsoft Office 365 est également fourni.

Ajoutez un écran et un pack clavier souris et vous avez un PC complet à l'aise en bureautique et Internet. Garantie 2 ans.


> Voir l'offre
59,99 €Ecouteurs intra-auriculaires sans fil Bluetooth Jabra Elite 3 à 59,99 €
Valable jusqu'au 19 Mai

Boulanger fait une belle promotion sur les écouteurs intra-auriculaires sans fil Bluetooth Jabra Elite 3 qui passent à 59,99 €. On les trouve ailleurs à partir de 79,99 €.

Profitez d'une expérience d'écoute unique grâce aux Jabra Elite 3. Des écouteurs intra-auriculaires True Wireless qui ont été conçus tout spécialement pour donner un nouveau souffle à votre musique. Ils sont aussi capables de vous offrir une qualité d’appel et un son exceptionnel, quel que soit l’endroit où vous allez.


> Voir l'offre
145,68 €SSD Corsair Force MP600 Pro 1 To (NMVe M.2 Gen4, 7000/5500 Mo/s) à 145,68 € livré
Valable jusqu'au 19 Mai

Amazon Allemagne fait une promotion sur le SSD Corsair Force MP600 Pro 1 To (NMVe M.2 Gen4) qui passe à 141,07 € (avec la TVA ajustée). Comptez 4,61 € pour la livraison en France soit un total de 145,68 € livré alors qu'on le trouve ailleurs à partir de 160 €. Ce SSD utilise une interface M.2 NVMe PCIe Gen4 x 4 pour une connexion simple et des performances exceptionnelles : jusqu’à 7000 Mo/s en lecture séquentielle et jusqu’à 5500 Mo/s en écriture séquentielle. Le SSD est doté de la technologie 3D TLC NAND haute densité offrant une endurance d’écriture durable et assorti d’une garantie de 5 ans. Il est accompagné d'un dissipateur thermique.

Notez que ce SSD est compatible PS5.


> Voir l'offre

Sujets relatifs
Edition d'un fichier texte en ligne
editeur TinyMCE grande largeur texte dans page
Texte dans tableau
Probleme de mise en ligne de fichier sur un serveur
Aller à la ligne dans une info bulle
Bulle de texte dans une zone cliquable
écrire dans un fichier
Mise en ligne de fichier
Saut de ligne auto dans un mot
Retour à la ligne dans un courriel
Plus de sujets relatifs à Sauter une ligne dans un fichier texte.
 > Tous les forums > Forum Forum des Webmasters