[PHP][JS] nouvelle ligne dans une string...

nouvelle ligne dans une string... [PHP][JS] - Programmation

Marsh Posté le 24-10-2001 à 14:15:54    

voila, g 2 variables php qui contient un passage à la ligne. ex:
$toto1 = "tttttt
tttttt";
$toto2 = "rrrrrr
rrrrr";
(les valeurs de ces variables sont récupérées ds ma base mysql).
 
ma page php génére du code javascript qui met à jour un champs textarea. Par ex:
echo "function onclick_button1 () \n {document.monForm.maTextArea.value = \"$toto1\";}";
 
ds mon code javascript généré, g:
function onclick_button1()
{document.monForm.maTextArea.value = "tttttt
tttttt";}
ce qui me génére une erreur JS...
g essayé addslashes(), ms ca marche pas pour les retours à la ligne...
qqun a une idée?
thx

Reply

Marsh Posté le 24-10-2001 à 14:15:54   

Reply

Marsh Posté le 24-10-2001 à 14:54:01    

bon, ben g trouvé, mais je comprend pas ce que g fait !!!:crazy:
 
voila le code php que g tapé:
 
echo "function onclick_button1 () \n {document.monForm.maTextArea.value = \"".str_replace("\r\n","\\n",$toto1)."\";}";
 
g donc bien mon \n dans ma string javascript... La question qui me turlupine est :"qu'est-ce que c que le \r ??" Qu'est-ce qu'il fait dans ma string php?
pour info, cette string provient d'un champ textarea qui est ensuite stocké ds mysql puis affiché sur une autre page.
Quelqu'un utilise les \r et sait à koi ca sert?

Reply

Marsh Posté le 24-10-2001 à 17:53:33    

\r\n = retour à la ligne windows
\n = unix  
\r = mac
 
\n est parfois interprété sur windows directement comme retour à la ligne, ça dépend de l'humeur du programmeur.
 
pour ton problème javascript, tu peux utiliser l'antislash pour signifier que la ligne continue (comme en C ...). dans ton cas qui plante, l'interpréteur considère que la ligne est finie et donc que tu n'as pas fermé la chaîne.
 
document.monForm.maTextArea.value = "tttttt\
tttt";

Reply

Marsh Posté le 25-10-2001 à 11:24:04    

ok, merci pr ces indications, j'aime comprendre prkoi ce ke je fais marche :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed