je rencontre un problème avec un cookie qui apparemment ne se crée
pas.
voilà mon script :
if ( !$_COOKIE['toto'] ) {
// cryptage du mot de passe
$passe = crypt ($passe,"af");
// verification de l'utilisateur
$parametres = "$login&$passe";
verif_utilisateur($parametres);
// temps limite a l'utilisation
$expiration = 0;
// on cree le cookie
setcookie("toto",$parametres,$expiration,"/");
} else {
// on compare les variables avec celles du cookie
verif_utilisateur($_COOKIE['identifiant']);
}
L'utilisateur entre un login et un mot de passe dans le formulaire
d'une page html qui l'envoie sur la page contenant ce script, si aucun
cookie contenant ces données n'est trouvé, il le crée, sinon il
compare les variables entrées avec celles du cookie existant.
Dans toutes les pages suivantes, il cherche le cookie pour autoriser
l'accès grâce à la fonction verif_utilisateur, sinon il signale qu'il
y a une erreur d'dentification.
Le problème c'est que dans les pages suivantes, j'ai fait un test, il
ne trouve pas ce cookie !
Je précise que tout marche très bien quand je suis sur mon serveur
local mais en ligne impossible ! Quelqu'un pourrait il m'aider ?
Merci merci
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
angelique
Est-ce que le fait que l'expiration est à "0" ne causerais pas un problème?
Je ne pense pas, je l'utilise souvent, il permet de définir la durée de vie du cookie tant que le navigateur reste ouvert, et c'est exactement ce que je veux.
Par contre, le cookie se crée lorsque je le place plus haut dans ma page, soit juste après les include, soit après les variables, soit après le commentaire (car au dessus du code qui crée le cookie j'ai cette partie là) :
----------------------------------------------------------------------------------------- <? include ("connection.php"); include ("fonctions.php");
/* --------------- Creation du Cookie -------------- */ < mon code de création se trouve ici > -----------------------------------------------------------------------------------------
Est-ce que le fait que l'expiration est à "0" ne causerais pas un problème?
Je ne pense pas, je l'utilise souvent, il permet de définir la durée
de vie du cookie tant que le navigateur reste ouvert, et c'est
exactement ce que je veux.
Par contre, le cookie se crée lorsque je le place plus haut dans ma
page, soit juste après les include, soit après les variables, soit
après le commentaire (car au dessus du code qui crée le cookie j'ai
cette partie là) :
-----------------------------------------------------------------------------------------
<?
include ("connection.php");
include ("fonctions.php");
/* --------------- Creation du Cookie -------------- */
< mon code de création se trouve ici >
-----------------------------------------------------------------------------------------
Est-ce que le fait que l'expiration est à "0" ne causerais pas un problème?
Je ne pense pas, je l'utilise souvent, il permet de définir la durée de vie du cookie tant que le navigateur reste ouvert, et c'est exactement ce que je veux.
Par contre, le cookie se crée lorsque je le place plus haut dans ma page, soit juste après les include, soit après les variables, soit après le commentaire (car au dessus du code qui crée le cookie j'ai cette partie là) :
----------------------------------------------------------------------------------------- <? include ("connection.php"); include ("fonctions.php");
/* --------------- Creation du Cookie -------------- */ < mon code de création se trouve ici > -----------------------------------------------------------------------------------------
Par contre, le cookie se crée lorsque je le place plus haut dans ma page, soit juste après les include, soit après les variables, soit après le commentaire (car au dessus du code qui crée le cookie j'ai cette partie là) :
/* --------------- Creation du Cookie -------------- */ < mon code de création se trouve ici > ------------------------------------------------------------------------------ -----------
Incroyable non ? une solution ? étrange bug...
Il vaut mieux le mettre tout en haut car si un de tes "include" ou une des fonctions avant renvoit quelque chose sur la sortie standard (genre une erreur, un warning, etc.) ton cookie ne passera pas (il doit être le premier sur la sortie standard).
angelica <angelique@provisoire.com> wrote:
Par contre, le cookie se crée lorsque je le place plus haut dans ma
page, soit juste après les include, soit après les variables, soit
après le commentaire (car au dessus du code qui crée le cookie j'ai
cette partie là) :
/* --------------- Creation du Cookie -------------- */
< mon code de création se trouve ici >
------------------------------------------------------------------------------
-----------
Incroyable non ? une solution ? étrange bug...
Il vaut mieux le mettre tout en haut car si un de tes "include" ou une des
fonctions avant renvoit quelque chose sur la sortie standard (genre une erreur,
un warning, etc.) ton cookie ne passera pas (il doit être le premier sur la
sortie standard).
Par contre, le cookie se crée lorsque je le place plus haut dans ma page, soit juste après les include, soit après les variables, soit après le commentaire (car au dessus du code qui crée le cookie j'ai cette partie là) :
/* --------------- Creation du Cookie -------------- */ < mon code de création se trouve ici > ------------------------------------------------------------------------------ -----------
Incroyable non ? une solution ? étrange bug...
Il vaut mieux le mettre tout en haut car si un de tes "include" ou une des fonctions avant renvoit quelque chose sur la sortie standard (genre une erreur, un warning, etc.) ton cookie ne passera pas (il doit être le premier sur la sortie standard).
angelique
Il vaut mieux le mettre tout en haut car si un de tes "include" ou une des fonctions avant renvoit quelque chose sur la sortie standard (genre une erreur, un warning, etc.) ton cookie ne passera pas (il doit être le premier sur la sortie standard).
Rien à faire... dès qu'il est dans la condition (et même si j'enlève la fonction verif) il ne crée rien... Un bug de php chez l'hébergeur ? Ce même script fonctionne très bien sur mon site perso pourtant !
Il vaut mieux le mettre tout en haut car si un de tes "include" ou une des
fonctions avant renvoit quelque chose sur la sortie standard (genre une erreur,
un warning, etc.) ton cookie ne passera pas (il doit être le premier sur la
sortie standard).
Rien à faire... dès qu'il est dans la condition (et même si j'enlève
la fonction verif) il ne crée rien... Un bug de php chez l'hébergeur ?
Ce même script fonctionne très bien sur mon site perso pourtant !
Il vaut mieux le mettre tout en haut car si un de tes "include" ou une des fonctions avant renvoit quelque chose sur la sortie standard (genre une erreur, un warning, etc.) ton cookie ne passera pas (il doit être le premier sur la sortie standard).
Rien à faire... dès qu'il est dans la condition (et même si j'enlève la fonction verif) il ne crée rien... Un bug de php chez l'hébergeur ? Ce même script fonctionne très bien sur mon site perso pourtant !
Si ton hébergeur le supporte, prq ne pas utiliser une session ? session_start(); session_register('admin'); Si $login=="bonLogin" && $pass=="bonPass" $admin="codesecret de la mort qui tue"
avant tout appel à une fonction ou une page admin, tu vérifies que la vairaible $admin existe et contienne la valeur "code secret de la mort qui tue"
Tu définis la valeur de admin dans un seul fichier sur lequel tu fais un include, comme ca tu peux le changer facilement sans modifier toutes tes sources...
Sinon ,HTAccess
Good luck :)
Si ton hébergeur le supporte, prq ne pas utiliser une session ?
session_start();
session_register('admin');
Si $login=="bonLogin" && $pass=="bonPass"
$admin="codesecret de la mort qui tue"
avant tout appel à une fonction ou une page admin, tu vérifies que la
vairaible $admin existe et contienne la valeur "code secret de la mort
qui tue"
Tu définis la valeur de admin dans un seul fichier sur lequel tu fais un
include, comme ca tu peux le changer facilement sans modifier toutes tes
sources...
Si ton hébergeur le supporte, prq ne pas utiliser une session ? session_start(); session_register('admin'); Si $login=="bonLogin" && $pass=="bonPass" $admin="codesecret de la mort qui tue"
avant tout appel à une fonction ou une page admin, tu vérifies que la vairaible $admin existe et contienne la valeur "code secret de la mort qui tue"
Tu définis la valeur de admin dans un seul fichier sur lequel tu fais un include, comme ca tu peux le changer facilement sans modifier toutes tes sources...