Page 1 sur 1

Insertion d'une variable en session

Posté : 05 mai 2019, 09:49
par parfait
Bonjour, j'ai créé une petite fenêtre modale de bienvenue sur un site. Le problème c'est qu'elle s'affiche à chaque actualisation (se qui est embêtant).

J'ai donc pensé à insérer une variable en session et de vérifier si elle existe avant de lancer la fenêtre :
<?php if(!isset($_SESSION['modal']) : ?>
<div> .... </div>
<?PHP endif; ?>
Maintenant je ne trouve pas comment insérer une valeur en session après l'affiche de la boîte modale puisque si je fais :
  $_SESSION['modal'] = $_SERVER['REQUEST_URI']
Sa vas directement inséré donc il y aura jamais d'affichage.

Merci de votre aide.

Re: Insertion d'une variable en session

Posté : 05 mai 2019, 11:28
par Spols
il faut mettre le code d'insertion dans ton IF, ainsi la fenètre modal s'affichera une fois par session

Re: Insertion d'une variable en session

Posté : 05 mai 2019, 12:04
par parfait
Merci déjà pour ta réponse...

Juste suis sensé mètre quoi dans la condition ?
Quand je juste
if(!isset['$_SESSION['modal'])){
$_SESSION['mosal'] = ...
}
Sa fonctionne pas puisque le serveur exécute tous le code avant l'affichage.

Re: Insertion d'une variable en session

Posté : 05 mai 2019, 12:42
par @rthur
Tu peux aussi utiliser simplement un cookie pour ce genre de besoin :
https://www.php.net/manual/fr/function.setcookie.php

Pour répondre à ta dernière question, le principe c'est de vérifier si une session (ou un cookie) a déjà été posé précédement.
=> Si c'est le cas, c'est que l'utilisateur est déjà venu et donc tu n'affiche pas ta modal
=> Si ce n'est pas le cas, alors tu ajoutes un cookie ou une variable de session, et tu affiches la modal

Re: Insertion d'une variable en session

Posté : 05 mai 2019, 15:05
par parfait
Bon après midi...
C'est plus optimiser avec les COOKIES, possibilité de réactiver après x heure
Merci.