[ JS et PHP ]

[ JS et PHP ] - Programmation

Marsh Posté le 19-01-2002 à 23:17:28    

Je voudrais faire passer du php dans une focntion JS.
 
le problème est le suivant :
 
je sors du texte de ma bdd (par ex)

Citation :

Salut
 
comment vas tu ?


 
donc, ca va rentrer comme ca dans ma fonction JS

Citation :

<script>
 
fonction ('Salut
 
comment vas tu ?';);
</script>


et vu que ce n'est pas sur une seule ligne, ca ne va pas marcher  :cry:  
Je ne sais pas si c'est normal ?
comment faire ?

 

[edtdd]--Message édité par GhzMsnet--[/edtdd]

Reply

Marsh Posté le 19-01-2002 à 23:17:28   

Reply

Marsh Posté le 20-01-2002 à 02:55:23    

En fait tu gérère çà :  
<script>  
fonction ('Salut  
 
comment vas tu ?';);  
</script>
 
Alors qu'il faudrait générer çà :
 
<script>  
fonction ('Salut\n\ncomment vas tu ?';);  
</script>
 
donc en PHP si la chaîne paramètre est dans $toto :
 
$toto = replace( "\n", "\\n", $toto );
echo("<script>\nfonction ('$toto';);\n</script>\n" );


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 20-01-2002 à 09:44:14    

oui, mais ca me fais ca
 
<SCRIPT LANGUAGE="JAVASCRIPT">
message('Salut  
\\ncomment va tu ?);
</SCRIPT>
 
et ca ne marche pas :(
 
mais, si tu regardes le code source des pages du forum, le contenu des messages est stockée dans une fonction javscript, et bien que ce contenu fasse plusieurs lignes. Il est stocké sur une seule ligne  :pt1cable:

Reply

Marsh Posté le 20-01-2002 à 10:19:02    

Je ne comprends pas, çà devrait marcher !
C'est comme çà que je fait !


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 20-01-2002 à 10:22:56    

tu sais pas comment joce il fais pour que dans sa fonction, le contenu ne soit sur qu'une seule ligne ?

Reply

Marsh Posté le 20-01-2002 à 10:33:51    

Citation :

<SCRIPT language=JAVASCRIPT>
                  message('Créature','1','','10','16/01/02  à 0:48:06','','',
9;','#E9F0F8','2559'
,'y va tu y avoir bientot un forum a disposition !!!!
\\nTk ton site est super jusqua date
\\n
\\ncréature [img]smile/silly.gif[/img] ';);
                  </SCRIPT>


 
voila un exemple

Reply

Marsh Posté le 20-01-2002 à 10:35:05    

Comme je l'ai dit, çà devrai marcher . . .
Je ne comprends pas comment tu obtient :
 
message('Salut  
\\ncomment va tu ?);  
 
Dans le source généré, il ne devrait pas y avoir de double \.
 
Essaye çà pour voir si tu as aussi des \r:
 
$toto = str_replace( "\n", "\\n", str_replace( "\r", "", $toto ) );  
echo("<script>\nfonction ('$toto';);\n</script>\n" );
 
Sinon, il faut comprendre les codes EXACTES utilisé pour les retour à la ligne dans les données de ta base.

 

[edtdd]--Message édité par Mara's dad--[/edtdd]


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 20-01-2002 à 10:39:16    

un post plus haut, je t'ai mis ce que j'obtiens.
 
et ce qui est contenu dans la bdd provient d'un textarea d'un formulaire

Reply

Marsh Posté le 20-01-2002 à 11:07:57    

Une piste :
 
Attention de bien utiliser les guillemet doubles:
$toto = str_replace( "\n", "\\n", str_replace( "\r", "", $toto ) );  
et pas :
$toto = str_replace( '\n', '\\n', str_replace( '\r', '', $toto ) );  
 
http://www.php.net/manual/fr/language.types.string.php


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 20-01-2002 à 16:25:48    

merci beaucoup de ton aide  :jap:  
 
ca m'a bcp aidé, et en fait le problème venait aussi un addslashes()

Reply

Sujets relatifs:

Leave a Replay

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