[PHP] Passage de paramêtre dans un URL

Passage de paramêtre dans un URL [PHP] - Programmation

Marsh Posté le 03-04-2001 à 12:44:36    

Bonjour!
Dans une de mes pages, j'ai un lien du type:
 
<?
print("<a href=lien.php3?param1=$param1> ... </a>" );
?>
 
param1 est une chaine de caractères, et il se trouve que si cette chaine contient des espaces, seul le premier mot sera transmis à l'URL!
Exemple: si param1 vaut 'Moteur de recherche', param1 vaudra 'Moteur' !
Quelqu'un a un explication à cet étrange phénomène? Et une solution?
Merci d'avance!

Reply

Marsh Posté le 03-04-2001 à 12:44:36   

Reply

Marsh Posté le 03-04-2001 à 13:05:01    

tu ecris '$param1' au lieu de param1
 
sinon mets pas d'espace non plus entre les separateurs '&' dans une URL : sous IE ca passe, mais sous netscape ca merde (IE est trop permissif)

Reply

Marsh Posté le 03-04-2001 à 13:14:23    

Je suis bien obligée de garder $param1 si je veux que ma variable soit résolue! :)

Reply

Marsh Posté le 03-04-2001 à 13:18:09    

Il faut encoder $param1, je ne sais plus quelle fonction peut etre url_encode ou un truc dans ce genre
 
car ce qui se passe c'est que les espaces ne sont pas connu comme des caractères donc il faut les remplacer par leur code ( ici %20) mais cela le fait aussi pour d'autres caractères.
 
Une méthode qui marche est de passer ta variable en POST plutôt qu'en GET mais ceci ne marche peut etre pas pour ton site


---------------
La bave du crapaud n'empèche pas la caravane de passer .
Reply

Marsh Posté le 03-04-2001 à 13:48:12    

Un grand merci à toi Lord II, ça marche! :)

Reply

Sujets relatifs:

Leave a Replay

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