Obtenir l'ID de page précédemment visité

4

Je souhaite obtenir l'identifiant (ou le lien permanent) de la page visitée par le visiteur juste avant de visiter la page en cours, autrement dit l'identifiant de la dernière page de l'historique du navigateur.

Cela peut-il être fait? Une idée de comment le faire?

    
posée ptriek 07.12.2011 - 16:18

2 réponses

6

Découpez-le en deux parties:

Tout d'abord, nous créons une variable qui stocke l'URL de la page visitée en dernier, comme ceci:

$prev_url = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';

Ensuite, vous pouvez utiliser substr et strpos pour tout réduire entre ? = et le / après le numéro d'identification. comme ceci:

$prev_url = 'http://www.yoursite.com/?p=123';
$id_block = substr($prev_url, strpos($prev_url, "?p=")+1);
$id = substr($id_block, 0, strpos($id_block, "/"));

.. Vous pouvez également utiliser jQuery / Javascript pour obtenir le même résultat.

Je n’ai pas testé cela, mais ça devrait marcher - faites-moi savoir comment ça marche! Bonne chance;)

    
réponse donnée cr0z3r 07.12.2011 - 17:51
0

J'ai fait cette astuce comme ceci pour me permettre de vérifier également s'il s'agit de l'une de mes pages:

// Récupère le dernier lien de la page de l'historique

$prev_url = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : null;

// Vérifie s'il est non nul et s'il contient l'url de mon blog

if( !empty( $prev_url ) || strpos( $prev_url, (string)get_blog_details()->domain ) !== false ) :
    //Then display it only if it's one of my blog page ?>
    <a href="<?php echo $prev_url; ?>" class="previous-history-link">The last page from history</a>
<?php endif; ?>
    
réponse donnée Maxime Culea 02.03.2015 - 12:47

Lire d'autres questions sur les étiquettes