passaer une variable JS ds une url, pb avec les ' et les "

passaer une variable JS ds une url, pb avec les ' et les " - HTML/CSS - Programmation

Marsh Posté le 03-03-2003 à 11:04:01    

voila je suis un peu perdu  
j'arrive pas a envoyer tlien qui est une variable que j'aimerais envoyer :
 

Code :
  1. echo "<script>
  2.             function envoi (tlien)
  3.             {   alert(tlien);
  4.                 document.location.href='index2.php?lien_demande=tlien';
  5.             }
  6.             </script>
  7.  ";


 
j'envoie seulement le mot : tlien ou sinon j'ai une erreur comme envoyer la variable JS qui est une chaine de caractere ...

Reply

Marsh Posté le 03-03-2003 à 11:04:01   

Reply

Marsh Posté le 03-03-2003 à 11:07:30    

' -> %27
" -> %23
 
' et " sont interdits dans les URLs


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 03-03-2003 à 11:25:59    

super gd merci gm_superstar  
vraimennt sympa, tu peux pas savoir comme ca me fait ^plaisir que tu mets repondu aussi rapidemment  
 
 
ms alors comment fais ton pr envoyer la variable tlien_demande ayant pour valeur la variable tlien vers la page index2.php

Reply

Marsh Posté le 03-03-2003 à 11:30:11    

Voir : http://devedge.netscape.com/librar [...] ml#1194258
 
Quelque chose comme :
 
tlien = tlien.replace(/\'/, "%27" );


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 03-03-2003 à 13:01:04    

y a un truc qui m'echappe  
je viens de penser a l'instant  
 
comme tu dis les ' st interdits il faut les remplacer par des %27 et les doubles " par des %23 qd on en mets ds une url .....
 
avec le %23

Code :
  1. document.location.href='index2.php?lien_demande=%23tlien%23';


j'obtiens ca

Citation :

lien demande = #tlien#


le %23 c'est pour le # plutot je pense  
 
et si je fais

Code :
  1. un document.location.href='index2.php?lien_demande=%27tlien%27';


j'obtiens un

Citation :

lien demande = \'tlien\'


 
ms en fait je veux faire passer une variable et normallement j'ai pas à mettre de ' ou " si je veut faire passer une variable, c'est tout du moins ce que je pense ... les quotes permettent pr moi de faire passer une string

Reply

Marsh Posté le 03-03-2003 à 13:07:41    

Mmmmm en fait j'ai pris les valeurs hexa. Donc je recommence :
 
" -> %34
' -> %39

 
Bon je fatigue. Il faut bien prendre les valeurs hexa. Par contre je me suis trompé pour la valeur de "
 
" -> %22
 
Par contre pour le \ devant le ' ou le " c'est juste ton langage serveur qui échappe ces caractères. Si tu es en PHP un stripslashes devrait résoudre ce problème.


Message édité par gm_superstar le 03-03-2003 à 13:29:04

---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 03-03-2003 à 13:38:28    

bahh la en fait je me suis pas emmerder je me suis creer un formulaire et j'ai mis un iput type='hidden'
 
ms c chiant comme tout de pas savoir pq ???
 
je comprends le fait de rajouter un stripslash pr supprimer les slash au moment de la recuperation de la variable  
 
en general pr affecter une string a une variable, oki on mets des " avec des \ si besoin si on est ds un echo
 
Mais pr affecter une variable ds une autre variable on a pas besoin de quote
 
resumé  
 
variable <- "string"
variable <- variable  
 
dc si je pars de cette hypothese on a pas beoin de s'embeter avec des % parce que les quotes et des stripquotes  
non, n'est tu pas oki avec moi ???

Reply

Marsh Posté le 03-03-2003 à 13:44:30    

weed a écrit :

bahh la en fait je me suis pas emmerder je me suis creer un formulaire et j'ai mis un iput type='hidden'
 
ms c chiant comme tout de pas savoir pq ???
 
je comprends le fait de rajouter un stripslash pr supprimer les slash au moment de la recuperation de la variable  
 
en general pr affecter une string a une variable, oki on mets des " avec des \ si besoin si on est ds un echo
 
Mais pr affecter une variable ds une autre variable on a pas besoin de quote


Ben oui mais ton langage serveur ne sait pas ce que tu veux faire de ta variable. Il ne sait pas si tu veux l'afficher ou la réutiliser, donc dans le doute il ajoute les \. Mais en PHP ce comportement est désactivable au niveau de la configuration générale.
Enfin mettre un stripslashes c'est pas la mort ;)

weed a écrit :


resumé  
 
variable <- "string"
variable <- variable  
 
dc si je pars de cette hypothese on a pas beoin de s'embeter avec des % parce que les quotes et des stripquotes  
non, n'est tu pas oki avec moi ???


Les % sont obligatoires pour une autre raison : les " et ' sont interdits dans les URLs. Et accessoirement ça t'évite à avoir à les échapper dans tes variables JS.


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Sujets relatifs:

Leave a Replay

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