2011-07-19 6 views
2

Cela pourrait être une question fondamentale et je l'ai été à la recherche d'un moyen sûr et propre à le faire. Im passant une chaîne normale qui peut inclure des caractères spéciaux (comme $ ^% etc). Comment puis-je faire cela dans l'url? Par exemple j'ai une variable appelée $ text qui Dans addto.php de $ _GET. Comment puis-je transférer ceci à more.php?en toute sécurité passer des variables d'un fichier php à un autre fichier php dans l'URL

+0

Vous êtes de passage ce retour à votre propre serveur? Vous pourriez plutôt considérer les variables de session, vous n'avez donc jamais à communiquer les données au client. –

Répondre

5
'more.php?varname='.urlencode($_GET['text']); 
+0

comment pourrais-je le recevoir dans more.php ... devrais-je le décoder? et comment pourrais-je placer cela dans addto.php spécifiquement? – re1man

+0

Dans cet exemple, vous l'obtenez en utilisant $ _GET ['varname']. – fromvega

+0

Merci pour l'édition @fromvega – Paulpro

1

urlencode ressemble à ce que vous voulez.

(du docs)

Cette fonction est pratique lors de l'encodage d'une chaîne à utiliser dans une partie de la requête d'une URL, comme un moyen pratique de transmettre des variables à la page suivante.

0

Vous pouvez transmettre des données via une URL, sous forme de paires clé/valeur, mais vous ne devez pas l'utiliser pour transmettre trop de données car une URL a une limite. Vous ne devez pas non plus transmettre d'informations sensibles.

Une paire clé/valeur est quelque chose comme ceci:

key=value 

Si vous avez plus d'une paire, vous devez les séparer à l'aide du & car. Voici un exemple:

myScript.php?color1=blue&color2=red 

La chaîne après ? est appelée Chaîne de requête. Avec PHP, vous pouvez facilement accéder à ces paires clé/valeur en utilisant le $ _GET super-global. Ainsi, dans myscript.php vous:

$a = $_GET['color1']; 
$b = $_GET['color2']; 

Maintenant, si vous allez créer une chaîne de requête dynamique, vous devez utiliser urlencode() au moins, donc seront traduits des caractères spéciaux pour maintenir un format d'URL appropriée.

S'il vous plaît lire ce qui suit:

http://php.net/urlencode

http://php.net/manual/en/function.http-build-query.php

Questions connexes