[RESOLU] Problème de création de cookie

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Problème de création de cookie

Re: Problème de création de cookie

par Mazarini » 29 nov. 2019, 22:39

<?php if... est le contenu du fichier correspondant à l'url et il n'y a rien avant (pas de lignes blanche ni de blancs ?

A défaut de messages d'erreur à l'écran, il faut trouver les logs php pour voir ce qui se passe.

Est ce la même version php en local et en ligne ?

Re: Problème de création de cookie

par Nazim13013 » 29 nov. 2019, 16:56

j'ai remplacé la ligne comme montrer mais rien ne change, je ne comprends pas

Re: Problème de création de cookie

par Mazarini » 29 nov. 2019, 13:56

<?php if (isset($_POST['Mdp']) AND $_POST['Mdp'] ==  "test") { ?>
            <?php setcookie('Autorisation', 'Vrai', time() + 365*24*3600, null, null, false, true); ?>
Entre ?> et <?php, il y a des caractères (return et blancs).

Si les sorties ne sont pas bufferisées, le setcookies plante. En local, ca doit être bufferisé mais pas dans l'hébergement.
Je suppose que le paramétrage du serveur fait que les messages d'erreur sont affichés dans une log et pas à l'écran (c'est normal en ligne et c'est le contraire qui est normal en local). Donc pas de message comme quoi tu a déjà envoyé des caractères.

Une solution :
<?php if (isset($_POST['Mdp']) AND $_POST['Mdp'] ==  "test") { 
              setcookie('Autorisation', 'Vrai', time() + 365*24*3600, null, null, false, true); ?>

Re: Problème de création de cookie

par Nazim13013 » 28 nov. 2019, 17:00

 <?php if (isset($_POST['Mdp']) AND $_POST['Mdp'] ==  "test") { ?>
            <?php setcookie('Autorisation', 'Vrai', time() + 365*24*3600, null, null, false, true); ?>
            <p>
            Accès autorisé à la zone privée<br>
            <?php echo $_COOKIE['Autorisation'] ?>
            <a href="index.php" class="bouton1">Accueil</a><br>
            </p>
       <?php } else {?>
            <form method="post" action="CreateCookie.php">
            <p>Veuillez entrer le mot de passe : <br> <input type="password" name="Mdp" /></p>
            <input type="submit" value="Valider" />
            </form>
            <a href="index.php" class="bouton1">Accueil</a><br>
        <?php } ?>
Voila comment je crée mon cookie.

Re: Problème de création de cookie

par Mazarini » 28 nov. 2019, 16:52

A tout hasard tu peux tester le retour de la fonction setcookie : false ou true.
Il faudrait que tu montres au moins la ligne avec la fonction.

Pb possible :
- versions de php différentes
- non affichage des erreurs qui cache un problème (paramétrage de php.ini) => voir log et faire un test avec un script avec une erreur
- paramétrage de la bufferisation (ob_start()) => une ligne blanche bloque le cookies

Problème de création de cookie

par Nazim13013 » 28 nov. 2019, 16:01

Bonjour à tous,

Je débute en Php et bien que le langage ne soit pas bien compliqué surtout avec tous les bons tuto qu'on trouve sur Internet je me retrouve avec une petite difficulté.

Je vous explique :
je demande à mon site de créer un cookie lorsque j'entre un mot de passer qui me permettra d’accéder a une partie privée.

En local, tout fonctionne parfaitement, mais dès que j'envoie mon code sur mon serveur en ligne : le cookie ne se crée plus :cry:

si besoin, je vous mettrais des screens de mon code.

Merci d'avance, passez une bonne journée.