Pb suppression cookie
Fermé
corentin.bc
Messages postés
383
Date d'inscription
dimanche 8 février 2015
Statut
Membre
Dernière intervention
4 novembre 2022
-
27 déc. 2016 à 22:00
corentin.bc Messages postés 383 Date d'inscription dimanche 8 février 2015 Statut Membre Dernière intervention 4 novembre 2022 - 29 déc. 2016 à 09:29
corentin.bc Messages postés 383 Date d'inscription dimanche 8 février 2015 Statut Membre Dernière intervention 4 novembre 2022 - 29 déc. 2016 à 09:29
A voir également:
- Pb suppression cookie
- Forcer suppression fichier - Guide
- Suppression cookies - Guide
- Suppression page word - Guide
- Cookie manager - Télécharger - Confidentialité
- Doubleclick.net cookie ✓ - Forum Virus
6 réponses
yg_be
Messages postés
23412
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
28 décembre 2024
Ambassadeur
1 557
27 déc. 2016 à 22:18
27 déc. 2016 à 22:18
Tu peux montrer le code complet de la page d'options?
Cela nous permettra de proposer comment ajouter l'option "réinitialiser".
Cela nous permettra de proposer comment ajouter l'option "réinitialiser".
NHenry
Messages postés
15176
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
28 décembre 2024
350
27 déc. 2016 à 22:52
27 déc. 2016 à 22:52
Juste un doute :
Pour rappel, le code PHP est exécuté avant que la page ne soit envoyé au client, donc là, tu vides d'abord le cookie avant d'envoyer la page, donc le fait d'afficher la page supprime le cookie.
Pour rappel, le code PHP est exécuté avant que la page ne soit envoyé au client, donc là, tu vides d'abord le cookie avant d'envoyer la page, donc le fait d'afficher la page supprime le cookie.
corentin.bc
Messages postés
383
Date d'inscription
dimanche 8 février 2015
Statut
Membre
Dernière intervention
4 novembre 2022
8
Modifié par NHenry le 28/12/2016 à 08:49
Modifié par NHenry le 28/12/2016 à 08:49
Salut à vous 2.
Voici le code complet avec donc la ligne de code expérimentale que j'avais mise pour le bouton de réinitialisation :
merci d'avance !
Amicalement! Corentin.
Voici le code complet avec donc la ligne de code expérimentale que j'avais mise pour le bouton de réinitialisation :
<?php $log = ''; if(isset($_GET['act']) and $_GET['act'] == 'form') { if(isset($_POST['menu'])) setcookie('menu', $_POST['menu'], time() + 365*24*3600, null, null, false, true); if(isset($_POST['fontsize'])) setcookie('fontsize', $_POST['fontsize'], time() + 4*365.25*24*3600, null, null, false, true); if(isset($_POST['littlescreen'])) { if($_POST['littlescreen'] == 'on') setcookie('littlescreen', '1', time() + 4*365.25*24*3600, null, null, false, true); else setcookie('littlescreen', '0', time() + 4*365.25*24*3600, null, null, false, true); } header('Location: /'); } if(isset($_GET['act']) and $_GET['act'] == 'ok') $log = 'ok'; set_include_path($_SERVER['DOCUMENT_ROOT']); include("inclus/consts.php"); $titre="Options"; ?> <!doctype html> <html lang="fr"> <head> <?php include("inclus/header.php"); ?> </div> <?php include("inclus/menu.php"); ?> <hr /> <h3 id="menupage">Sommaire de la page</h3> <a href="#contenu" rel="nofollow noopener noreferrer" target="_blank">Ignorer le sommaire de cette page</a> <ul> <li><a href="#listed" rel="nofollow noopener noreferrer" target="_blank">Choisir le style de menu</a></li> <li><a href="#tllplc" rel="nofollow noopener noreferrer" target="_blank">Choisir la taille de la police</a></li> <li><a href="#petit" rel="nofollow noopener noreferrer" target="_blank">Choisir l'adaptation du site pour les petits écrans</a></li> </ul> </div> <hr /> <div id="container" role="main"> <h1 id="contenu"><?php print $titre; ?></h1> <p>Cette page vous donne accès à quelques options pour personnaliser le site à votre guise.<br /> Les cookies doivent être activés dans votre navigateur pour que cela prenne effet. </p> <form action="?act=form" method="post"> <?php $menu = isset($_COOKIE['menu']) ? $_COOKIE['menu'] : 'select'; $littlescreen = isset($_COOKIE['littlescreen']) ? $_COOKIE['littlescreen'] : 0; ?> <a id="listed"></a> <label for="choix_menu">Style du menu:</label> <select name="menu" id="choix_menu"> <option value="select" id="ld" <?php if($menu == "select") echo "selected='selected'"; ?> > Liste déroulante (par défaut)</option> <option value="ulli" id="lp" <?php if ($menu == "ulli" ) echo "selected='selected'"; ?> > Liste de liens</option> </select> <hr /> <a id="tllplc"></a> <label for="f_fontsize">Taille de la police:</label> <?php if(isset($_COOKIE['fontsize'])) $fontsize = $_COOKIE['fontsize']; else $fontsize = '16'; ?> <select id="f_fontsize" name="fontsize"><option value="11" style="font-size: 11px;" <?php if($fontsize=='11')echo'selected';?>>11: Petit</option><option value="16" style="font-size: 16px;" <?php if($fontsize=='16')echo'selected';?>>16: Normal (par défaut)</option><option value="20" style="font-size: 20px;" <?php if($fontsize=='20')echo'selected';?>>20: Grand</option><option value="24" style="font-size: 24px;" <?php if($fontsize=='24')echo'selected';?>>24: Très grand</option></select><hr /> <a id="petit"></a> <label for="littlescreen">Mode petit écran:</label> <input type="checkbox" id="littlescreen" name="littlescreen"<?php if($littlescreen==1)echo ' checked="checked"'; ?> /><hr /> <input type="submit" value="Valider" /> <br /> <input type="submit" value="réinitialiser" <?php setcookie('menu', time() - 365*24*3600); setcookie('fontsize', time() - 365*24*3600); setcookie('littlescreen', time() - 365*24*3600); ?> /> </form> <hr /> <ul> <li><a href="#menusite" rel="nofollow noopener noreferrer" target="_blank">Retour au menu global</a></li> <li><a href="#menupage" rel="nofollow noopener noreferrer" target="_blank">Retourner au sommaire de la page</a></li> </ul> </div> <?php include("inclus/footer.php"); ?> </body> </html>
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
merci d'avance !
Amicalement! Corentin.
yg_be
Messages postés
23412
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
28 décembre 2024
1 557
28 déc. 2016 à 09:23
28 déc. 2016 à 09:23
Je pense que ce serait plus simple d'avoir un checkbox "réinitialisation" dans le formulaire, et, dans la page php, tester si ce checkbox est actif, et, dans ce cas, changer les cookies.
corentin.bc
Messages postés
383
Date d'inscription
dimanche 8 février 2015
Statut
Membre
Dernière intervention
4 novembre 2022
8
28 déc. 2016 à 14:34
28 déc. 2016 à 14:34
Euh, oui, sûrement raison.
Mais, je sais pas trop faire ça, enfin, je peux tenter mais pourrais-tu me donner un petit exemple de code stp ?
Merki.
Mais, je sais pas trop faire ça, enfin, je peux tenter mais pourrais-tu me donner un petit exemple de code stp ?
Merki.
yg_be
Messages postés
23412
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
28 décembre 2024
1 557
28 déc. 2016 à 15:30
28 déc. 2016 à 15:30
Tu peux t'inspirer de ce que tu fais pour "littlescreen" : tu offres une checkbox, et, si elle est cochée, le php agit en conséquence.
Tu pourrais donc ajouter une checkbox "réinitialisation", et, si elle est cochée, faire le code que tu proposes.
C'est possible aussi avec le bouton submit tel que tu le proposes, à condition de donner un nom au bouton submit, ce qui te permettra de le tester au retour et d'agir en conséquence.
Tu pourrais donc ajouter une checkbox "réinitialisation", et, si elle est cochée, faire le code que tu proposes.
C'est possible aussi avec le bouton submit tel que tu le proposes, à condition de donner un nom au bouton submit, ce qui te permettra de le tester au retour et d'agir en conséquence.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
corentin.bc
Messages postés
383
Date d'inscription
dimanche 8 février 2015
Statut
Membre
Dernière intervention
4 novembre 2022
8
Modifié par NHenry le 28/12/2016 à 16:29
Modifié par NHenry le 28/12/2016 à 16:29
Euh, j'ai dû faire une gaffe :(
j'ai fais ça :
mais, ma page ne charge même plus :(
Amicalement! Corentin.
j'ai fais ça :
<?php $log = ''; if(isset($_GET['act']) and $_GET['act'] == 'form') { if(isset($_POST['menu'])) setcookie('menu', $_POST['menu'], time() + 365*24*3600, null, null, false, true); if(isset($_POST['fontsize'])) setcookie('fontsize', $_POST['fontsize'], time() + 4*365.25*24*3600, null, null, false, true); if(isset($_POST['littlescreen'])) { if($_POST['littlescreen'] == 'on') setcookie('littlescreen', '1', time() + 4*365.25*24*3600, null, null, false, true); else setcookie('littlescreen', '0', time() + 4*365.25*24*3600, null, null, false, true); } if(isset($_POST['reinitialise'])) { if($_POST['littlescreen'] == 'on') setcookie('menu', time() - 365*24*3600); setcookie('fontsize', time() - 365*24*3600); setcookie('littlescreen', time() - 365*24*3600); else } header('Location: /'); } if(isset($_GET['act']) and $_GET['act'] == 'ok') $log = 'ok'; set_include_path($_SERVER['DOCUMENT_ROOT']); include("inclus/consts.php"); $titre="Options"; ?> <!doctype html> <html lang="fr"> <head> <?php include("inclus/header.php"); ?> </div> <?php include("inclus/menu.php"); ?> <hr /> <h3 id="menupage">Sommaire de la page</h3> <a href="#contenu" rel="nofollow noopener noreferrer" target="_blank">Ignorer le sommaire de cette page</a> <ul> <li><a href="#listed" rel="nofollow noopener noreferrer" target="_blank">Choisir le style de menu</a></li> <li><a href="#tllplc" rel="nofollow noopener noreferrer" target="_blank">Choisir la taille de la police</a></li> <li><a href="#petit" rel="nofollow noopener noreferrer" target="_blank">Choisir l'adaptation du site pour les petits écrans</a></li> </ul> </div> <hr /> <div id="container" role="main"> <h1 id="contenu"><?php print $titre; ?></h1> <p>Cette page vous donne accès à quelques options pour personnaliser le site à votre guise.<br /> Les cookies doivent être activés dans votre navigateur pour que cela prenne effet. </p> <form action="?act=form" method="post"> <?php $menu = isset($_COOKIE['menu']) ? $_COOKIE['menu'] : 'select'; $littlescreen = isset($_COOKIE['littlescreen']) ? $_COOKIE['littlescreen'] : 0; ?> <a id="listed"></a> <label for="choix_menu">Style du menu:</label> <select name="menu" id="choix_menu"> <option value="select" id="ld" <?php if($menu == "select") echo "selected='selected'"; ?> > Liste déroulante (par défaut)</option> <option value="ulli" id="lp" <?php if ($menu == "ulli" ) echo "selected='selected'"; ?> > Liste de liens</option> </select> <hr /> <a id="tllplc"></a> <label for="f_fontsize">Taille de la police:</label> <?php if(isset($_COOKIE['fontsize'])) $fontsize = $_COOKIE['fontsize']; else $fontsize = '16'; ?> <select id="f_fontsize" name="fontsize"><option value="11" style="font-size: 11px;" <?php if($fontsize=='11')echo'selected';?>>11: Petit</option><option value="16" style="font-size: 16px;" <?php if($fontsize=='16')echo'selected';?>>16: Normal (par défaut)</option><option value="20" style="font-size: 20px;" <?php if($fontsize=='20')echo'selected';?>>20: Grand</option><option value="24" style="font-size: 24px;" <?php if($fontsize=='24')echo'selected';?>>24: Très grand</option></select><hr /> <a id="petit"></a> <label for="littlescreen">Mode petit écran:</label> <input type="checkbox" id="littlescreen" name="littlescreen"<?php if($littlescreen==1)echo ' checked="checked"'; ?> /><hr /> <input type="checkbox" id="reinitialise" name="reinitialise" <?php if($reinitialise==1) echo "checked='checked'"; ?> /><hr /> <input type="submit" value="Valider" /> <br /> </form> <hr /> <ul> <li><a href="#menusite" rel="nofollow noopener noreferrer" target="_blank">Retour au menu global</a></li> <li><a href="#menupage" rel="nofollow noopener noreferrer" target="_blank">Retourner au sommaire de la page</a></li> </ul> </div> <?php include("inclus/footer.php"); ?> </body> </html>
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
mais, ma page ne charge même plus :(
Amicalement! Corentin.
yg_be
Messages postés
23412
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
28 décembre 2024
1 557
28 déc. 2016 à 16:24
28 déc. 2016 à 16:24
Ton code est illisible, sans indentation, et tu négliges d'utiliser la coloration syntaxique offerte par ccm (vois remarque du modérateur plus haut).
Les accolades dans ceci me semblent suspectes:
Les accolades dans ceci me semblent suspectes:
if(isset($_POST['reinitialise'])) { if($_POST['littlescreen'] == 'on') setcookie('menu', time() - 365*24*3600); setcookie('fontsize', time() - 365*24*3600); setcookie('littlescreen', time() - 365*24*3600); else }Je pense que le code php que tu insères au milieu du code html de définition des boutons n'a pas de sens.
NHenry
Messages postés
15176
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
28 décembre 2024
350
28 déc. 2016 à 16:30
28 déc. 2016 à 16:30
Souvent à cause d'un ; oublié, d' { } pas en phase ou d'une ( ) manquante.
corentin.bc
Messages postés
383
Date d'inscription
dimanche 8 février 2015
Statut
Membre
Dernière intervention
4 novembre 2022
8
29 déc. 2016 à 09:29
29 déc. 2016 à 09:29
Bon, merci de m'avoir répondu mais j'abandonne, je comprends rien à comment je pourrai faire, donc, temps pis.