Page 1 sur 1

retour à la ligne

Posté : 05 juil. 2019, 16:33
par hars
Bonjour,

Vous allez me dire que le sujet à déjà été traité 1000 fois, mais je pose quand même la question sachant que.......
Je précise à tout hasard que je débute et que je suis les cours PHP de Grafikart.

Code : Tout sélectionner

<?php $notes = [10,15,18,7,9]; foreach ($notes as $note) { echo "- $note \n"; } ?>
Mon éditeur est visual, mon serveur uWamp v 3.1.0 et mon navigateur Opera 62.0.3331.43.
J'ai essayé avec un autre navigateur mais c'est pareil, les retours à la ligne ne se font pas.

D'où peut venir le problème du non retour à la ligne sachant que j'ai bien mis un double quote, donc \n doit bien être interprété.

Merci pour votre aide...

Re: retour à la ligne

Posté : 05 juil. 2019, 19:14
par finipe
Si tu veux en retour à la ligne en HTML, il faut mettre la balise "<br>" au lieu du \n.
Ou alors, utiliser la fonction php nl2br() qui convertit les retours chariots en balises <br>.

Re: retour à la ligne

Posté : 05 juil. 2019, 19:49
par hars
Merci cela fonctionne très bien mais je ne comprends pas pourquoi mon \n n'est pas interprété par mon serveur uWamp (qui est à jour sur sa dernière version) et qui utilise PHP v7.0.3...

Re: retour à la ligne

Posté : 06 juil. 2019, 12:17
par Spols
il est surement interprété si tu regarde le code source mais c'est le navigateur qui ne s'en soucie pas.

Re: retour à la ligne

Posté : 07 juil. 2019, 08:41
par hars
Bonjours,

Quelque soit le navigateur utilisé, je n'ai pas de saut à la ligne.
Même ce code ne fonctionne pas

Code : Tout sélectionner

$nb=(int)readline('Saisir un nombre : ');

J'ai désinstallé uWamp et installé Wamp, mais cela n'y change rien.
J'ai l'impression que c'est mon pc qui déconne... #-o

Re: retour à la ligne

Posté : 07 juil. 2019, 12:02
par @rthur
Si tu es dans un navigateur web, alors il faut que tu fasses un saut à la ligne avec une balise HTML, c'est à dire en utilisant la balise <br>

Si tu es en ligne de commande, ou en train de générer un fichier au format texte (avec la bonne entête de Content-type: text/plain), alors tu dois utiliser le caractère de nouvelle ligne \n pour Unix, \r\n pour Windows, \r pour MacOS<X

Re: retour à la ligne

Posté : 08 juil. 2019, 15:13
par hars
Voici mon code (fichier cours.php situé à la racine de mon serveur dans le dossier www) :

Code : Tout sélectionner

<!DOCTYPE html> <html> <head> <title>Titre de la page</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" type="text/css" href="index.css" /> </head> <body> <!--Haut de page--> <header> </header> <!--Contenu principal--> <main> <?php <?php $notes = [10,15,18,7,9]; foreach ($notes as $note) { echo "- $note \n"; } ?> </main> <!--Pied de page--> <footer> </footer> </body> </html>
Suis-je obligé d'écrire

Code : Tout sélectionner

echo "- $note"; echo "<br>";
ou alors

Code : Tout sélectionner

echo "- $note <br>";
à la place de

Code : Tout sélectionner

echo "- $note \n";
?

Re: retour à la ligne

Posté : 08 juil. 2019, 15:23
par or 1
echo "- $nom est dans la classe de $class.<br>";
fait aussi l'affaire.

Re: retour à la ligne

Posté : 08 juil. 2019, 15:28
par hars
OK, merci.
Pardon, je me suis trompé de code...

C'est étrange de voir des cours (graphikart) en vidéo et que cela fonctionne pour eux mais pas quand on le fait en perso chez soit.

Bref, je ferai ainsi la prochaine fois.

Merci encore pour votre aide à tous...