2009-01-10 5 views
1

J'ai maintenant mis en place afin que lorsque les gens vont à une page « merci » après avoir rempli un formulaire, ils vont à une page qui dit:forme de base php aide - Titre referer

thanks for coming <a href="<?php echo $_SERVER['HTTP_REFERER'] ?>here's a link back to where you came from</a> 

Qu'est-ce que Je veux qu'il dise:

thanks for coming <a href="<?php echo $_SERVER['HTTP_REFERER'] ?>here's a link back to <?php echo TITLE OF REFERRING PAGE ?></a> 

Y at-il un moyen simple de faire cela?

Répondre

2

La façon la plus simple est de passer le titre de la page comme une variable de session:

<?php 

    $_Session["referrerTitle"] = $pageTitle; 

?> 

Si vous travaillez avec un fichier d'en-tête comprennent, vous pouvez avoir positionné cette variable déjà dans la page de référence.

Puis dans votre lien:

<p> thanks for coming <a href="<?= $_SERVER['HTTP_REFERER']"?>here's a link back to <?= $_Session["referrerTitle"] ?></a></p> 
0

Si la page de référence est sous votre contrôle, vous pouvez définir un cookie sur chaque page de votre site, égal au titre. Ensuite, sur la page Merci, vous pouvez lire le cookie fourni par la requête HTTP et l'insérer dans le code HTML.

De même, vous pouvez suivre les informations de session, de sorte que le cookie ne porte pas le titre, mais qu'il contienne un identifiant unique pour chaque visiteur. Votre base de données pourrait alors contenir le titre de la dernière page pour chaque identifiant. C'est un peu exagéré, pour ce que vous avez demandé, mais si vous avez besoin de suivre les données de session de toute façon, il pourrait être plus propre.

Les deux solutions reposent sur le navigateur de l'utilisateur qui prend en charge les cookies.

2

Mettez une entrée de type caché dans votre formulaire, avec le titre de la page comme valeur. Ensuite, utilisez la valeur cachée soumise.