CyberMen30
Messages postés152Date d'inscriptiondimanche 31 août 2003StatutMembreDernière intervention 8 novembre 2007
-
1 nov. 2006 à 17:11
CyberMen30
Messages postés152Date d'inscriptiondimanche 31 août 2003StatutMembreDerniè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...
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
audayls
Messages postés373Date d'inscriptionsamedi 9 juillet 2005StatutMembreDernière intervention11 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();
?>"
FhX
Messages postés2350Date d'inscriptionmercredi 13 octobre 2004StatutMembreDernière intervention18 avril 20153 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é'].
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