Redirection avec variable

Résolu
CyberMen30 Messages postés 152 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 8 novembre 2007 - 1 nov. 2006 à 17:11
CyberMen30 Messages postés 152 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 8 novembre 2007 - 1 nov. 2006 à 21:43
Bonjour,

J'ai une erreur de redirection.

Dans mon header, je tente de passer une variable mais le lien de redirection prend le nom du lien exactement comme je lui écris et non pas avec le nom du fichier et le contenu de la variable que j'ai à la fin du lien...

header('Location: http://lien/test/test.exe?Membre$id.txt');

donc, l'exécutable ne reconnait pas le fichier qu'il doit prendre car au lieu d'avoir son id en paramètre, il y a Membre$id.txt

Est-ce que quelqu'un a une idée??? 

Merci!
A voir également:

10 réponses

CyberMen30 Messages postés 152 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 8 novembre 2007
1 nov. 2006 à 21:43
Finalement, je fait le move par Meta...

echo '<meta http-equiv="Refresh"content="0;URL=http://blablabla.ca/test/test.exe?Membre'.$id.'.txt">';

ca fonctionne

Merci a vous tous très gentil
3
CyberMen30 Messages postés 152 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 8 novembre 2007
1 nov. 2006 à 17:23
j'ai changé ma ligne pour celle-ci

Membre'.$id.'.txt

Voila un autre problême d'apparu...

Le lien de redirection n'affiche plus
http://lien/test/test.exe?Membre$id.txt

Mais le contenu de la variable ne s'affiche pas non plus.

Le problême je crois viens du fait que la variable $id se fait donner une valeur plus loin dans ma page...et vu que la redirection se fait par un header, j'imagine que lorsqu'il li la variable, elle ne contient absolument rien
0
audayls Messages postés 373 Date d'inscription samedi 9 juillet 2005 Statut Membre Dernière intervention 11 août 2008
1 nov. 2006 à 18:37
Salut,
Tu n'est pas obligé d'utilisé un "header" au début de la page tant que ce qu'il y a avant le "header" ne renvoie rien.
Par exemple : "<?php
$id = 'iddumembre';
header('Location: http://lien/test/test.exe?Membre'.$id.'.txt');
?>" ne provoque pas d'erreur par contre"<?php
$id = 'iddumembre';
echo $id;
header('Location: http://lien/test/test.exe?Membre'.$id.'.txt');
?>" dans ce cas il suffit d'utiliser la bufferisation de sortie :"<?php
ob_start();
$id = 'iddumembre';
echo $id;
header('Location: http://lien/test/test.exe?Membre'.$id.'.txt');
ob_end_flush();
?>"

For every choice, a consequence (Fable)
0
CyberMen30 Messages postés 152 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 8 novembre 2007
1 nov. 2006 à 19:19
Merci beaucoup pour ta réponse.

Malheureusement,c a me donne le même résultat :-(
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
audayls Messages postés 373 Date d'inscription samedi 9 juillet 2005 Statut Membre Dernière intervention 11 août 2008
1 nov. 2006 à 19:23
C'est bizare... Tu es sur que que la variable id contient quelque chose ?

For every choice, a consequence (Fable)
0
CyberMen30 Messages postés 152 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 8 novembre 2007
1 nov. 2006 à 19:24
ouais, la valeur de la variable s'affiche sur ma page
0
CyberMen30 Messages postés 152 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 8 novembre 2007
1 nov. 2006 à 19:25
mais lors de la redirection, je ne vois pas la valeur de $id mais bien $id lui même qui s'affiche dans la barre d'adresse
0
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
1 nov. 2006 à 19:26
On utilise pas le buffer simplement pour éviter un pauvre header() mal placé.

Déja, le simple fait que tu utilises un en-tête dans un corps de document signifie un mauvais style de codage.
A oublier.

Pour ton problème :
Fait un echo de ta variable en premier lieu. Ensuite, il faut savoir qu'une redirection avec l'utilisation de '?' dans l'URL signfie que tu dois avoir un couple clé/valeur dans ta chaine de requète.
Je m'explique :

Tu ne peux pas faire :
xxx.php?valeur

La bonne forme est de ce type :
xxx.php?clé=valeur.
Que tu récupères ensuite via $_GET['clé'].
0
CyberMen30 Messages postés 152 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 8 novembre 2007
1 nov. 2006 à 19:27
ah ok, merci infiniement de vos réponses, je vais tester  :-)
0
CyberMen30 Messages postés 152 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 8 novembre 2007
1 nov. 2006 à 19:33
oupsss, je ne suis pas plus avancé  :-(

http://blablabla.ca/dossier/test.exe?Membre'.$id.'.txt

Je n'ai pas besoins de récupérer la valeur...l'éxécutable la récupère automatiquement.

Je dois envoyer l'adresse
http://blablabla.ca/dossier/test.exe?
avec ensuite le nom d'un fichier texte pour permettre a test.exe de s'exécuter.

Mon id est en fait une clé unique pour ne pas avoir deux fois le même fichier exécuté de là le $id que je souhaitais mettre à la fin de mon nom de fichier
0
Rejoignez-nous