Comment créer un bouton retour page précédente ?

Réponses rédigées par Antoine
Dernière mise à jour : 2017-10-30 13:40:09
Thèmes : html - javascript - script - php
Question

Bonjour, je voudrais savoir quelles sont les différentes manières de créer un bouton pour revenir à la pagé précédente sur une page web ?

Réponse

Bonjour, tu peux le faire avec JavaScript et en PHP : quand un visiteur clique sur le bouton, il sera redirigé vers la dernière page qu'il a visité, comme s'il avait cliqué sur le bouton précédent dans son navigateur.

Tu peux donc le faire en éditant ton code HTML de ta page, et en ajoutant un peu de JavaScript. Mais attention ces boutons ne fonctionneront pas si l'utilisateur n'a pas d'historique de navigation. Par exemple, si l'utilisateur ouvre ta page dans un nouvel onglet ou une nouvelle fenêtre du navigateur, rien ne se produira lorsqu'il cliquera sur le bouton.

En JavaScript avec history.back

L'objet appelé history qui contient les URL que l'utilisateur a visitées dans sa fenêtre de navigateur actuelle. Tu peux utiliser la méthode history.back() pour indiquer au navigateur de revenir à la page précédente de l'utilisateur.

Un moyen facile d'utiliser ce JavaScript est de l'ajouter à l'attribut d'événement onclick à un bouton.

<form>
<input type = "button" value = "Retour!"  onclick = "history.back()">
</form>

En JavaScript avec history.go

La méthode history.go() indique au navigateur d'accéder à une page spécifique de l'historique de navigation de l'utilisateur. Tu peux spécifier vers quel élément d'historique tu veux accéder en mettant un nombre entre parenthèses. En programmation informatique, on appelle cela un argument.

Si tu spécifies le nombre -1 comme argument, le navigateur retournera à la dernière page dans l'historique du navigateur. Voici le même code que ci-dessus, en utilisant history.go (-1) au lieu de history.back() .

<form>
<input type = "button" value = "Retour"  onclick = "history.go(-1)">
</form> 

En PHP avec header location

Cette solution est rarement utilisée avec un bouton. Elle permet plutôt de rediriger l'internaute à la fin de l'exécution d'un script comme par exemple le traitement d'un formulaire.

header('Location: ' . $_SERVER['HTTP_REFERER']);

Attention, si dans ton code tu as déjà déclaré précédemment un header, tu dois utiliser obstart() et ob_end_flush().

obstart(); // à placer au tout début de ton code
/*
Le reste de ton code
*/
header('Location: ' . $_SERVER['HTTP_REFERER']);
ob_end_flush(); // à placer juste après le header location