Page 1 sur 1

Variables globales sous MAMP

Posté : 06 déc. 2011, 00:20
par Bats
Bonsoir à tous,

Je débute aves des tutos, j'expérimente sous MAMP et aucun ne semble résoudre mon problème.

Je veux passer une données, (chaine de caractère ou int) par variable globale ($_GLOBALS ou $COOKIE).
A priori rien de compliqué : un fichier php pour envoyer la donnée, un autre pour la récupérer.
Je copie-colle les exemples des tutos, mais sans succès.

Ci-dessous mon code.
What's the problem ? Est-ce MAMP qu'il faut configurer de manière particulière ?

Thanks,
Bats


>>>>>>>>>>> SENDER >>>>>>>>>>>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Test d'envoir de variable par COOKIE</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<h2>Envoi d'une variabla par COOKIE</h2>

<p>
<?php
setcookie('cookie_name', 'blablabla', (time() + 3600));
echo "Variable test dans sender : ";
echo $_COOKIE['cookie_name'];
?>
</p>
<a href="COOKIE_reciever.php">Dis-moi bonjour !</a>
</body>
</html>



>>>>>>>>>> RECIEVER >>>>>>>>>>>>>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Test de réception de variable par COOKIE</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<h2>reception d'une variable par COOKIE</h2>
<p>Valeur recuperee par COOKIE :
<?php
echo $cookie_name; // exemple 1 (si registar_globals est à on dans php.ini)
//echo $HTTP_COOKIE_VARS['cookie_name']; // exemple 2
//echo $_COOKIE['cookie_name']; // exemple 3 (si on est sur PHP 4.1.0 ou plus)

?>
</p>
</body>
</html>

Re: Variables globales sous MAMP

Posté : 06 déc. 2011, 07:58
par moogli
Salut,

Je pense que :
- ton niveau d'erreur n'est pas assez élevé pour du développement, dans le php.ini l'error_reporting doit être à E_ALL|E_STRICT dans le cas contraire tu ne peux voir le message d'erreur que php te renvoi avec tes scripts.
- commerce le dit mon formateur : le copier / coller c'est la Mort du développeur ;)
Si tu lit bien tout tuto correct sur le sujet, tu verra que le setcookie doit être avant tout affichage or ton paté de html avant c'est de l'affichage.
Déplacé le en début de fichier tu ne devrait plus avoir de soucis.
Autre chose, tu ne peux voir le cookie sur la même page que le setcookie.

En commentaire de ton code tu a les explications sur l'utilisation des cookies. Seul le dernier cas est assuré de fonctionner car il s'agit de la conf par défaut de php.

Utilisé aussi la fonction isset pour savoir si le cookie existe avant de l'employer :)

@+