header (location ..)

programmeur
Invité n'ayant pas de compte PHPfrance

03 août 2011, 22:47

Bonsoir tout le monde,

Serait-il possible de passer en des valeurs en GET dans un header comme ci dessous ?

header("Location : photos.php");

J'ai essayé : header("Location : photos.php?id_user=$_GET[id_user]");

Mais ca ne fonctionne pas :(

Merci de votre aide

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

04 août 2011, 04:20

salut,

la syntaxe n'est pas correcte car :
- une chaine de caractère, en php, se définit avec des ' ou des " pour les délimiters.
- les index de tableau non numéric sont des chaines de caractèrs
- PHP ne peux savoir si ce que tu veux passer dans ta chaine de caractère, c'est $_GET; ou $_GET['id_user'] ou $_GET[id_user] donc avec la constante id_user en index !

c'est pourquoi je te conseil de plutôt utiliser les ' que les ". l’interprétation des variables dans une chaine ça peu être pratique mais la concaténation c'est bien aussi et plus claire :)

solution

header('Location : photos.php?id_user='.$_GET['id_user']);

@+
Il en faut peu pour être heureux ......

Eléphant du PHP | 171 Messages

04 août 2011, 08:00

header('Location: photos.php?id_user='.$_GET['id_user']);

Le ":" collé au Location, sinon ça ne marche pas. ;)
Le bon jugement s'apprend par l'expérience qui s'acquiert en partie par le mauvais jugement.