Récupérer une chaine entière stocké dans l'URL

Récupérer une chaine entière stocké dans l'URL - PHP - Programmation

Marsh Posté le 14-06-2006 à 12:11:46    

Salut  :hello:  
 
j'ai un fichier qui me permet de rediriger une URL
 
je fais comme cela :
http://www.site.com/go.php?red=http://www.google.fr
la variable $red me renvoit bien : http://www.google.fr
 
Seulement si je fais ca :
http://www.site.com/go.php?red=htt [...] L:fr&q=dvd
 
ca ne me renvoit que :
http://www.google.fr/search?sourceid=navclient-ff
 
Il s'arrete au 1er &
 
Vous auriez une astuce ?

Reply

Marsh Posté le 14-06-2006 à 12:11:46   

Reply

Marsh Posté le 14-06-2006 à 12:16:21    

urlencode() de la chaine que tu passe sur red


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 14-06-2006 à 12:19:14    

deja essayé
urlencode() me renvoit ca : http%3A%2F%2Fwww.google.fr%2Fsearch%3Fsourceid%3Dnavclient-ff

Reply

Marsh Posté le 14-06-2006 à 12:19:52    

bah ouais, bah apres faut faire urldecode :D


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 14-06-2006 à 12:21:56    

gné ?

Reply

Marsh Posté le 14-06-2006 à 12:24:49    

le & est un séparateur d'argument, donc si tu ne veux pas qu'il soit considéré comme tel, soit tu le remplaces manuelement par & soit tu passes un coup d'htmlspecialchars() sur l'url avant envoi.

Reply

Marsh Posté le 14-06-2006 à 12:26:38    

un moment, tu fais  

Code :
  1. $url_qui_fait_chier = urlencode("http://urltrestreschiante" );
  2. echo www.minsite.com/?red=$url_qui_fait_chier;


et quand tu recupere ton bouzin :

Code :
  1. $url = urldecode($_GET['red']);


 
Ce qui pose probleme,c'est le &, urlencode va le remplacer pour pas qu'il soit interprete
 
Edit : rawurlencode a l'air d'etre mieux d'apres les commentaires de la doc PHP


Message édité par zapan666 le 14-06-2006 à 12:28:43

---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 14-06-2006 à 12:30:23    

Ok seulement ca marche uniquement si on pose l'URL en dur dans urlencode
 
si on fait urlencode($_GET['red']) ca ne fonctionne pas

Reply

Marsh Posté le 14-06-2006 à 12:32:23    

nycius a écrit :

Ok seulement ca marche uniquement si on pose l'URL en dur dans urlencode


non

nycius a écrit :


si on fait urlencode($_GET['red']) ca ne fonctionne pas


 :o Tu n'as pas compris je crois
 
Un moment ou a un autre, faut bien que tu genere ton URL
http://www.site.com/go.php?red=htt [...] L:fr&q=dvd
 
et bah, c'est a ce moment qu'il faut utiliser rawurlencode (ou urlencode)


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 14-06-2006 à 12:51:32    

tu nas pas compris non plus ce que je voulais
je veux changer l'url dans $red a la volée comme ca
 
 
fais le test tu verras que ca ne fonctionne pas

Reply

Marsh Posté le 14-06-2006 à 12:51:32   

Reply

Marsh Posté le 14-06-2006 à 12:58:57    

nycius a écrit :

tu nas pas compris non plus ce que je voulais
je veux changer l'url dans $red a la volée comme ca
 
 
fais le test tu verras que ca ne fonctionne pas


Encore heureux que ca ne fonctionne pas  :D (sans encodage etc), sinon tu fais comment pour recuperer tes autres arguments ?
Si tu veux vraiment faire 'a la vole', tu peux toujours changer le separateur d'argument.
Mais tes donnees elles viennent d'ou ? Avant le GET, tu genere un liens, autre ?


Message édité par zapan666 le 14-06-2006 à 12:59:23

---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 14-06-2006 à 13:36:38    

En fait j'aimerai que lorsque je vais sur :
http://www.site.com/go.php?red=htt [...] dhj&kdfkfj
 
ca me redirige vers l'url contenu dans $red
 
en faisant comme tu me dis ca ne marche pas je capte pas pkoi

Reply

Marsh Posté le 14-06-2006 à 13:40:03    

:sarcastic: ok...
 
 
ton url, tu genere comment ?  
Comment tu fais pour obtenir ca :
http://www.site.com/go.php?red=htt [...] dhj&kdfkfj
sur ta page internet
 
 
(et ca ne marche pas, car comme ecrit dans au moins 3 posts avant, & est un separateur d'argument...)

Message cité 1 fois
Message édité par zapan666 le 14-06-2006 à 13:40:45

---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 14-06-2006 à 13:42:30    

zapan666 a écrit :

:sarcastic: ok...
 
 
ton url, tu genere comment ?  
Comment tu fais pour obtenir ca :
http://www.site.com/go.php?red=htt [...] dhj&kdfkfj
sur ta page internet


 
Ca ne sera sur aucune page, c'est une redirection à la main, tu vois ce que je veux dire ?

Reply

Marsh Posté le 14-06-2006 à 13:43:57    

donc
http://www.site.com/go.php?red=htt [...] dhj&kdfkfj
 
c'est un truc que tu as ecris a la main ?


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 14-06-2006 à 13:46:59    

voila et c'est censé me rediriger vers l'url contendu dans $red avec un header contenu dans go.php

Reply

Marsh Posté le 14-06-2006 à 13:48:57    

nycius a écrit :

Ok seulement ca marche uniquement si on pose l'URL en dur dans urlencode
 
si on fait urlencode($_GET['red']) ca ne fonctionne pas


Je pense que tu n'as pas vu qu'il y avait deux fonctions differentes dans l'exemple qui t'a été donné : urlencode et urldecode.

Reply

Marsh Posté le 14-06-2006 à 13:55:05    

nycius a écrit :

voila et c'est censé me rediriger vers l'url contendu dans $red avec un header contenu dans go.php


ouais, fin, la, tu es pas dans la merde si tu les fais a la main : il faudrait encode l'url a la main, (pour pouvoir la decode en php sur une autre page) bon courage, hein...
 
sinon tres simple :  

Code :
  1. <?php
  2. $mon_url = 'http://fdkljfdlkjds;lj;lkj.com';
  3. ?>
  4. <a href=http://monsite.com/mapage.php?red=<?php echo urlencode($mon_url); ?>


Oui c'est en dur, mais comme tes urls sont deja en dur si j'ai bien compris...
 
(et dans mapage.php)

Code :
  1. $monurl = urldecode($_GET['red']);


 
mais bon, c'est un peu ce qui est ecris dans les posts au dessus [:pingouino]


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 14-06-2006 à 16:00:43    

en fait si le lien est dans une page web ca marche parfaitement
 
seulement si on tape dans son navigateur ca marche pas

Reply

Marsh Posté le 15-06-2006 à 10:08:40    

Avec REQUEST_URI je récupere bien l'url contendu dans $red mais ce qu'il y a avant me fait chier

Reply

Marsh Posté le 15-06-2006 à 10:34:35    

[:petrus75] C'est balo


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 15-06-2006 à 16:10:50    

nycius a écrit :

Avec REQUEST_URI je récupere bien l'url contendu dans $red mais ce qu'il y a avant me fait chier


 
Essaye la query_string plutôt...

Reply

Marsh Posté le 15-06-2006 à 18:57:02    

nan je recupere tous les param

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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