Bonjour,
Super site, super dev Jonathan, Merci.
Sur un de mes sites en cours de dev, je m'inspire fortement du code de l'espace membre.
Je voulais savoir à quoi correspond ce bout code que je voudrais remplacer par quelque chose de plus standard.
$_SESSION['flash']
Bonjour,
c'est tout simplement l'index flash du tableau des valeurs stockées en session
Hi,
J'ai pas encore saisi tout le principe de fonctionnement, mais pour l'utilisation c'est OK et je trouve ça génial :)
Merci
Bonsoir,
je pense qu'il faut tout d'abord commencer par une petite definition de la session :
Une session est un mécanisme technique permettant de sauvegarder temporairement sur le serveur des informations relatives à un internaute
-- <cite>apprendre-php.com</cite>
Les données sont stockées en session sont placées dans un tableau
[
'accesseur' => 'valeur'
]
Ensuite pour l'utiliser, c'est comme un tableau normale. Maintenant l'utilité, on l'utilise pour faire transiter des informations entre les pages. Imaginons que après que ton utilisateur ai rempli et posté un formulaire tu veuille le rediriger vers la page d'acceuil, avant de rediriger tu vas faire :
$_SESSION['message_flash'] = "Ton message de succes ou d'echec"
et dans ta page d'acceuil :
if(isset($_SESSION['message_flash'])) {
// on affiche le message et on supprime la variable du tableau pour que ça n'affiche le message qu'une seule fois
}
Mais la session peut aussi etre utilisé pour d'autres choses, par exemple pour stocker quelques données de la base de donné. Par exemple si tu veux un menu pour afficher le nom de l'utilisateur, et quelques lien pour modifier son profil, etc. Tu va stocker son nom et son id et ainsi tu n'aura pas a faire de requete SQL à chaque fois pour les recuperer.
J'espère avoir pu aider. Et si j'ai répondu à coté merci de m'en excuser ^_^
Cordialement
La caractéristique principale d'un flash-message est que le message doit être éphémère,
c'est à dire que sa durée de vie n'est que d'une requête http
comme l'a dit @hocktor c'est fait pour passer des messages d'erreurs au navigateur.
On utilise généralement un cookie pour cela, et mettre le message-flash en session ça n'a pas d'utilité
Si le serveur reçoit un cookie qui se nomme flashxxx (convention) il le supprime
Certains frameworks gèrent cela de façon automatique, sinon il faut gérer la suppression manuellement (compliqué).