Undefined variable

Résolu
francousss Messages postés 3 Date d'inscription mercredi 3 mai 2006 Statut Membre Dernière intervention 18 mai 2006 - 18 mai 2006 à 12:13
juki_webmaster Messages postés 947 Date d'inscription mercredi 19 novembre 2003 Statut Membre Dernière intervention 5 avril 2008 - 18 mai 2006 à 13:00
Bonjour,

premiere chose je suis nul !!! Mais j'ai pas trop le temps de plancher sur le php. Si vous pouviez m'aidez je vous en serait reconnaissant.

C'est un tout chti problème en plus. C'est sur...

Alors voilà, j'ai une page html avec un lien :

[./switcher.php?change=1 Essai de variable]

et j'ai un ptit fichier php : (switcher.php)

<?php
setcookie ("sitestyle", "$change");
$ref = $_SERVER['HTTP_REFERER'];
header("Location: $ref" );
?>

Et j'ai toujours cette erreur :
Notice: Undefined variable: test ect...

Voilà... Franchement y a plus simple... Ben même ça j'y arrive pas... J'ai pas besoin d'apprendre tous le php, c'est juste pour faire un switcher de style css pour le site d'un collège. (http://www.alistapart.com/articles/phpswitch/)

Si vous avez une idée je suis preneur. Merci d'avance.

6 réponses

cs_putch Messages postés 624 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 14 décembre 2009 1
18 mai 2006 à 12:44
rajoute dans ta page switcher.php

$change = $_GET['change'];
3
cs_putch Messages postés 624 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 14 décembre 2009 1
18 mai 2006 à 12:17
salut !
le message de l'erreur parle de lui-meme

Notice: Undefined variable: test ect...
=> ta variable "test ect..." n'est pas déclarée ...
0
francousss Messages postés 3 Date d'inscription mercredi 3 mai 2006 Statut Membre Dernière intervention 18 mai 2006
18 mai 2006 à 12:41
Merci de te pencher sur le probleme.

Alors je redonne le message d'erreur en entier :
Notice: Undefined variable: change in c:\documents and settings\francois.garnier\mes documents\site\easyphp\www\switcher.php on line 2

la variable c'est bien "change" et pas "test" lol.

Sinon comment je fais pour la declarer ?
Parce que si je met un :

$GLOBALS['change']= "style1";

ben ma variable elle sera toujours egal à "style1"...

Merci
0
francousss Messages postés 3 Date d'inscription mercredi 3 mai 2006 Statut Membre Dernière intervention 18 mai 2006
18 mai 2006 à 12:51
délire !!!

Merci beaucoup
0

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

Posez votre question
juki_webmaster Messages postés 947 Date d'inscription mercredi 19 novembre 2003 Statut Membre Dernière intervention 5 avril 2008 3
18 mai 2006 à 12:58
Salut,

Sa risque de reafficher le warning et donc d'alterer aux reponses HTTP du serveur.

<?php

if (isset($_GET['change'])) {
if (!setcookie ('sitestyle', $change)) {
// Erreur de creation du cookie
}
}

$ref = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : 'http://...com/jai_pas_recu_de_referer';

if (!@header('Location: '.$ref)) {
// Erreur d'envoie du header, ont affiche un lien hypertexte:
echo 'Une erreur est survenue, cliquer ['.$ref.' ici]';
}
?>

Fait attention, certains clients HTTP (navigateur wouebe) desactive l'envoie du REFERER pour eviter de ce faire pister.

Si une erreur aparait sur le cookie, remplace le header() par:
!@header('Location: '.$ref,false)
0
juki_webmaster Messages postés 947 Date d'inscription mercredi 19 novembre 2003 Statut Membre Dernière intervention 5 avril 2008 3
18 mai 2006 à 13:00
Ops desolé, je suis lent a ecrire.

if (isset($_GET['change'])) {
if (!setcookie ('sitestyle', $change)) {

J'ai fait une erreur: if (!setcookie ('sitestyle', $_GET['change'])) {
0
Rejoignez-nous