Tout d'abord, la question évidente : Avez-vous essayé de copier les variables que vous sauvegardez dans les cookies et de les coller dans un fichier de type print_r()
afin que vous puissiez prouver qu'ils ont les valeurs que vous attendez. Il est possible que vous ayez fait une erreur de frappe ou de capitalisation, ou quelque chose de similaire.
La prochaine chose à vérifier sont les valeurs de ces variables. Vous n'avez pas spécifié les valeurs possibles pour Access_Level
y Db_Con
mais s'ils sont réglés sur false
ou vide, alors le cookie sera effacé, plutôt que d'être défini à cette valeur. Il est peu probable que ce soit ce que vous souhaitez.
Si ce n'est pas le problème, un autre problème possible (bien que j'en doute dans ce cas) est la longueur totale de vos cookies. Un site ne peut servir qu'un maximum de 4K dans sa chaîne de cookies. Si vous utilisez le codage UTF-8 (ce qui est recommandé), cela ne signifie qu'un millier de caractères environ, y compris tous les noms de champs et le formatage de la chaîne de cookies, ainsi que les valeurs. Les cookies dépassant cette longueur ne seront pas enregistrés. Il ne semble pas que ce soit votre problème ici, mais je suppose qu'il est possible que vous serviez d'autres cookies en plus de ces quatre, ce qui pourrait faire pencher la balance.
Je recommande aussi fortement de ne pas utiliser les cookies pour le type de données pour lesquelles vous les utilisez ici.
Il est important de savoir que les cookies sont un moyen très peu sûr de stocker des données. Ils peuvent être espionnés par des tiers et sont facilement modifiables. Si votre site s'appuie sur des Access_Level
pour être précis lors des chargements de pages ultérieurs et l'utilise pour décider d'accorder ou non l'accès à certaines pages, alors vous avez donné à votre site une massif trou de sécurité.
Deuxièmement, les cookies sont inefficaces. La totalité de la chaîne de cookies est envoyée dans les deux sens pour chaque demande adressée au serveur. Cela inclut les graphiques et autres fichiers qui ne sont pas en mesure de les affecter réellement. Ainsi, si une page contient beaucoup d'images, de feuilles de style et de fichiers javascript qu'elle charge, vous enverrez tous vos cookies dans les deux sens, peut-être des dizaines de fois, chaque fois que l'utilisateur se rendra sur une nouvelle page.
Je recommande d'utiliser les sessions PHP à la place. Il est vrai qu'elles utilisent également un cookie, mais celui-ci ne contient aucune donnée pouvant être facilement manipulée, et il ne s'agit que d'une seule variable de cookie, ce qui minimise ces deux problèmes. C'est aussi extrêmement facile à utiliser.
J'espère que cela vous aidera.