|
|
|
|
Posté par
loicabel, le vendredi 24 août 2007 à 22:01:33Configuration: Windows XP Opera 9.23
salut,
en premier, essaie avec la bonne balise : <textarea>. ça devrait déjà aranger la situation , après on verra ce qui reste ! [ Mathieu ] Il y a surement des pandas pour ne dépendre de rien |
Effectivement cela règle le problème entre les différends navigateurs.
Mais j'ai toujours mo problème de retour à la ligne. Configuration: Windows XP Opera 9.23 |
alors, on se récapitule !!!
l'utilisateur effectue une saisie dans la zone. et tu souhaite récupérer les retours à la ligne (CR/LF) pour que le texte soit formaté comme la saisie ? si c'est ça, est-ce que tu t'es posé la question d'utiliser carrément un éditeur de texte ? est-ce qu'un retour au format html te conviendrait ? si oui regarde ce que fait FCKEditor. (il y en a surement d'autres, moi j'ai essayer celui là je le trouve très bien !) je te conseille ça parce que je crois que ton problème est une vraie prise de tête. je crois avoir lu quelque chose à ce sujet mais je ne sais plus. faute de neurones, je vais essayer de trouver des infos ! <edit> et non !!! c'est pas du tout ce que je pensais… donc regarde l'éditeur, on sait jamais ça pourrait te plaire… pour ton problème est-ce que tu as un exemple d'entrée et de sortie des données ? si tu fais un : echo (nl2br(htmlentities($_POST['textarea']))); qu'est-ce que ça donne ? </edit> [ Mathieu ] Il y a surement des pandas pour ne dépendre de rien |
merci beaucoup. je vais essayer et je te tiens au courant de mon succès ou non.
je te confirme que autrement c'est une prise de tête car cela fait 2 jours que je coince là dessus... Configuration: Windows XP Opera 9.23 |
effectivement cela fonctionne avec echo (nl2br(htmlentities($_POST['textarea'])));
mais je souhaiterai l'écrire en une seule ligne dans le fichier. à tu une idée de comment faire ? excuse moi si mes questions sont des questions de bases mais je suis débutants. Configuration: Windows XP Opera 9.23 |
peux tu nous monter le code source produit par 'echo()' ?
si ça s'affiche correctement il doit y avoir les balises html ad hoc. tu le veux en texte brut ou en html ? [ Mathieu ] Il y a surement des pandas pour ne dépendre de rien |
il ne produit pas de code, mais il renvoit le texte telquel, avec les retours à la lignes.
j'ai réussi à faire ce que je voulais avec un replace, mais la methode ne me convient pas car il peut y avoir confusion avec la frappe de l'utilisateur. Si tu as une idée je suis preneur. Configuration: Windows XP Opera 9.23 |
et si tu le stockes dans le fichier tel quel et tu appliques 'nl2br()' à ce que tu as enregistré, ça fonctionne ?
[ Mathieu ] Il y a surement des pandas pour ne dépendre de rien |
oui ca fonctionne.
j'ai un dernier problème avecles caractère spéciaux du type apostrophe, qu'il retranscrit " \ ' ". je suppose qu'il faut que j'utilise un htmlentities(), mais je n'arrive pas à le placer correctement. peux tu encore m'aider stp? Configuration: Windows XP Opera 9.23 |
'htmlentities()' peut prendre le paramètre 'ENT_NOQUOTES' pour ignorer apostrophes et guillemets.
plus d'infos [ Mathieu ] Il y a surement des pandas pour ne dépendre de rien |
en fait ce n'est pas ce que je voulais.
Il me renvoit par exemple le texte suivant : coucou§§§§§§§§c \' est moi (dans mon fichier texte). les syboles § corespondent à la chaine qui remplace le retour à la ligne. je voudrais ne pas voir l'anti slasch mais que l'utilisateur puisse l'utiliser dans son texte. je ne peux donc pas utiliser le replace. comment faire? Configuration: Windows XP Opera 9.23 |
as-tu essayé 'htmlentities($var, ENT_NOQUOTES)' ?
[ Mathieu ] Il y a surement des pandas pour ne dépendre de rien |
peux-tu refaire un point sur la méthode exacte que tu utilises ?
parce que avec 'nl2br()' ça devrait fonctionner tout seul. y a un truc qui m'échappe ! [ Mathieu ] Il y a surement des pandas pour ne dépendre de rien |
oui, mais ca m'affiche les codes html alors que je ne les veux pas. Configuration: Windows XP Opera 9.23 |
tu fais quoi exactement (replace(), htmlentities()…) et dans quel ordre ?
[ Mathieu ] Il y a surement des pandas pour ne dépendre de rien |
je receptionne ma variable et je la transforme pour la mettre dans mon fichier :
$texte=str_replace(chr(10),'§§§§§',$texte); $texte=str_replace(chr(13),'§§§§',$texte); $texte=str_replace(chr(13),'§§§§',$texte); puis dans une autre page (celle pour consulter) : <?php $monfichier=fopen('toto.txt','r+'); $ligne=fgets($monfichier); fclose($monfichier); $ligne=str_replace('§§§§§',chr(10),$ligne); $ligne=str_replace('§§§§',chr(13),$ligne); echo (nl2br(htmlentities($ligne))); ?> Configuration: Windows XP Opera 9.23 |
y a moyen de faire beaucoup mieux, c'est sûr !
reste plus qu'à trouver... au lieu d'ouvrir le fichier tu peux soit placer le contenu dans une balise <object>, soit l'interpréter comme du php. <object> <object data="file.txt" type="text/plain" width="772px" height="400"> alt : <a href="file.txt">Fichier texte</a> </object> php <?php
ob_start();
include('file.txt');
$text = ob_get_contents();
ob_end_clean();
?>
ce sont des pistes, à mon avis la première n'est pas pratique, la deuxième est à creuser car tu récupères le contenu du fichier texte en l'interprétant comme du php. en <14> tu dis ne pas vouloir de balise mais comment affiches tu le texte ? [ Mathieu ] Il y a surement des pandas pour ne dépendre de rien |
en <14> j'utilise echo, et c'a m'affiche des <br> a la place des retours à la ligne. en fait il me faudrait une fonction qui fasse l'inverse de nb2lr pour l'affichage, ca serai nickel, enfin je crois...
sinon je vais creuser les pistes surtout celle en php pk je ne connait pas (encore!!!) les objects. Configuration: Windows XP Opera 9.23 |
salut,
je suis sûr que l'on passe à côté d'une évidence par manque de connaissance du sujet. mais bon, on peut toujours tenter de bricoler… pour la fonction inverse de 'nl2br()' j'ai trouvé çà dans le manuel php : admin at ninthcircuit dot info
06-Jun-2005 11:00
As stated in the manual above, PHP's nl2br() feature only puts a "<br />" tag before each newline ("\n"). So -- if you intend to code a br2nl() function for yourselves, all you have to do is remove every occurence of "<br />" or "<br>".
Rather than get into nasty regular expressions to accomplish this, just use what PHP has built in already -- str_replace():
<?php
/* br2nl for use with HTML forms, etc. */
function br2nl($text)
{
/* Remove XHTML linebreak tags. */
$text = str_replace("<br />","",$text);
/* Remove HTML 4.01 linebreak tags. */
$text = str_replace("<br>","",$text);
/* Return the result. */
return $text;
}
?>
The final result from this function being called is whatever was entered before XHTML/HTML linebreaks were added.
All newlines are preserved by default, as per PHP ln2br() specification. Since the code above preserves newlines also, you can expect your data to reappear in the same way it was entered.
[ Mathieu ] Il y a surement des pandas pour ne dépendre de rien |
| 09/04 10h57 | Sed - Conversion retours chariots DOS (CRLF) / UNIX (LF) | Sed |
| 23/03 20h06 | Sed - Insérer des espacements | Sed |
| 20/02 09h59 | Les lettres recommandées en ligne | e-administration |
| 07/03 17h30 | créer une boutique en ligne | e-communication |
| 05/01 18h57 | Sed - Supprimer une ou plusieurs lignes d'un fichier | Sed |
| 29/12 23h58 | Retour a la ligne textarea | 2 |
| 06/06 12h04 | Retour ligne dans mail | 2 |
| 12/03 11h24 | PHP (mail : retours ligne corps du sujet) | 2 |
| 28/08 09h15 | Excel date sur ligne auto et retour ligne | 0 |
| 29/01 18h41 | Problème de retour ligne dans un formulaire r | 2 |
![]() | NcFTP - NcFTP est un formidable client FTP en ligne de commande disponible pour la quasi-totalité des systèmes d'exploitation.... | Catégorie: Téléchargement Licence: Freeware/gratuit |
![]() | BitDefender - BitDefender est la version gratuite de l'antivirus de l'éditeur Softwin. Il possède des fonctionnalités équivalentes à... | Catégorie: Antivirus Licence: Freeware/gratuit |
![]() | Coloriage - Coloriage est un logiciel de coloriage pour jeunes enfants, à la manière de Tux Paint . Il répertorie quelque 220 dessins à... | Catégorie: Dessin Licence: Freeware/gratuit |
![]() | PKZIP - Le compresseur/décompresseur de fichiers ZIP original ... peut être très utile parfois... | Catégorie: Compression/Décompression Licence: Freeware/gratuit |
![]() | Medal Of Honor : | Catégorie: Jeu vidéo PS2 | 7.48 € Surcouf |
![]() | Jules Verne : Retour | Catégorie: Jeu vidéo PC | 3.99 € PriceMinister |
![]() | Bone Episode 1: La | Catégorie: Jeu vidéo PC | 28.49 € Alapage |
![]() | Swissonic USB Studio D | Catégorie: Carte son |