Afficher un message selon la page par laquelle arrive le visiteur

Mammouth du PHP | 643 Messages

27 févr. 2016, 13:12

Bonjour à toutes et a tous,
Voici le ptit pbm du jour :wink:

J'affiche un message à l'utilisateur lui disant qu'il doit soit se connecter ou s'inscrire si c'est pas déjà fait.
<?php if(empty($_SESSION)) {
					echo '<div class="alert alert-success"><i class="fa fa-info"></i> Vous devez être identifié afin de pouvoir déposer une annonce, <a class="inscription" href="compte_utilisateur_inscription.php">m\'inscrire maitenant</a></div> ';
				}
				?>
Ca marche c'est pas le problème mais j'aimerais lui afficher ce message uniquement si il clique auparavant sur un lien précis dans mon cas uniquement si il clique sur le bouton
<a href="publier.php" title="post">Publier un nouveau post</a>

On peut arriver sur la page de différentes manière mais j'aimerais donc lui afficher le message que si il clique sur ce lien.
comment procéder svp ?
Merci à vous

Avatar du membre
Mammouth du PHP | 1609 Messages

27 févr. 2016, 13:48

Salut, en mettant le code uniquement sur la page publier.php non ?
Développeur web depuis + de 20 ans

Eléphant du PHP | 337 Messages

28 févr. 2016, 03:45

Tu peux mettre une variable get pour confirmer que l'utilisateur a cliqué sur ce lien là et aucun autre, du genre :

Code : Tout sélectionner

<a href='pagecible.php?action=pouet'>Le lien en question</a>
...Et dans ta page cible :

Code : Tout sélectionner

<?php if(empty($_SESSION) && $_GET['action'] == "pouet") { echo '<div class="alert alert-success"><i class="fa fa-info"></i> Vous devez être identifié afin de pouvoir déposer une annonce, <a class="inscription" href="compte_utilisateur_inscription.php">m\'inscrire maitenant</a></div>'; } ?>

Un peu vaseux, mais ça fonctionne à peu de frais.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

01 mars 2016, 10:38

Bonjour,

Si ce lien est sur une ou des pages bien précises, tu peux éventuellement utiliser la valeur de $_SERVER['HTTP_REFERER'], pour savoir à partir de quelle page de ton site (ou d'un autre site) l'utilisateur a réussi à arriver sur ta page cible afin de lui afficher le message ou non.

S'il y a plusieurs moyens d'accéder à ta page cible depuis une même page (via le lien ou d'autres moyens, la solution proposée par finipe semble la plus efficace (tu peux aussi faire le principe inverser et ajouter un paramètre en plus sur tous les autres modes d'accès pour que ton lien reste inchangé).

Ceci étant, à mon avis si le postulat est que seul un utilisateur identifié peut poster, peu importe le chemin qu'il a prit pour arriver sur cet écran, tu dois pouvoir lui afficher le message et tu t'embêtes sans doute pour rien, à voir quel est le contexte et ton besoin :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...