Javascript / retour chariot et formulaire

WRInaute impliqué
Bonjour à tous ,

Mon problème est simple , mais difficile à expliquer , je vais essayer d'être le plus court et clair possible pour pas vous saouler ;)


J'ais un formulaire " message , et , pour diverse raison qui serait long à expliquer , je passe la variable dans un javascript comme ceci :

<script>
url = "http://www.domaine.com/test.php?message="+ document.getElementById("message").value;
</script>

VOus voyez le document.getElementById c'est le nom du textarea message . EN gros au lieu de passer la variable dans un formulaire normal de page en page , je la passe dans l'url ( get ) , elle apparait en clair dans l'url .

Ca marche nickel , mais le soucis est que les retour à la ligne ne sont pas compté . Ils sont automatiquement suprimé .

Normalement pour régler ce problème on fait un truc genre :
<?
$message=nl2br($message);
?>

Or la ca ne fonctionne pas car la variable passe dans l'url a cause du javascript et non par le formulaire classique .



Y a t il une ligne de commande en javascript qui pourrais me faire retrouver mes retour chariot ?

Quelqu'un aurais une idée pour m'aider ? Car la je suis bloqué ....
 
WRInaute impliqué
Stellvia a dit:
<script>
url = "http://www.domaine.com/test.php?message="+ document.getElementById("message").value;
</script>

Peut-être :
Code:
<script>
url = "http://www.domaine.com/test.php?message="+ escape(document.getElementById("message").value);
</script>
Pour les caractères unicode, c'est une autre fonction.
 
WRInaute impliqué
Salut Tilt

J'ais rajouté ta ligne et ceci ( pour ceux qui tombe sur ce post plus tard ) :

$texte = rawurlencode($message);
$texte = str_replace("%0D%0A", "<br>", $texte);
$texte = rawurldecode($texte) ;

Et maintenant j'ais bien mes retour chariot.

Merci ;)
 
WRInaute impliqué
Dis voir , est ce que tu saurais comment rajouter une 2 eme variable dans l'url en javascript ?

Je galere j'ais essayer ceci :

Code:
<script>
url = "http://www.domaine.com/test.php?message="+ escape(document.getElementById("message").value + var=(document.getElementById("var").value); 
</script>

J'ais rajouté + var=(document.getElementById("var").value); pour la 2 eme variable .
Mais ca marche pas evidemment . C'est la syntaxe javascript qui est sans doute mauvaise mais je suis une quiche en javascript :/

Si quelqu'un peut m'eclairer svp ?
 
Discussions similaires
Haut