Maison  >  Article  >  développement back-end  >  Comment forcer l'actualisation de la page lors du clic sur le bouton Précédent dans le routage d'un seul fichier PHP ?

Comment forcer l'actualisation de la page lors du clic sur le bouton Précédent dans le routage d'un seul fichier PHP ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-26 14:36:03170parcourir

How to Force Page Refresh on Back Button Click in Single PHP File Routing?

Comment actualiser la page sur le bouton Retour Cliquez pour un routage de fichier PHP unique

Dans votre extrait de code, vous utilisez .htaccess pour rediriger tout le trafic vers un seul fichier index.php et inclure dynamiquement différentes pages HTML en fonction du paramètre GET des paramètres. Cependant, vous rencontrez des problèmes avec le bouton Précédent qui n'actualise pas la page.

Pour résoudre ce problème, envisagez de mettre en œuvre l'une des solutions suivantes :

Option 1 :

Créez un nouveau fichier PHP qui affiche un horodatage ou un numéro unique qui se met à jour à chaque fois que la page est actualisée. Ce fichier peut être inclus en bas du fichier index.php pour forcer un rafraîchissement de la page lorsque le bouton retour est enfoncé.

<code class="php">// newpage.php
header("Cache-Control: no-store, must-revalidate, max-age=0");
header("Pragma: no-cache");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
echo time();
?></code>
<code class="html"><!-- index.php -->
<!-- ...your existing code... -->
<?php include "newpage.php"; ?></code>

Option 2 :

Utilisez JavaScript pour stocker les données des éléments créés dynamiquement dans un champ de saisie masqué avec display : aucun. Lorsque la page se charge (événement onload), vérifiez la valeur du champ masqué. Si c'est « non », réglez-le sur « oui » et continuez. Si c'est « oui », rechargez la page.

<code class="html"><input type="hidden" id="refreshed" value="no">
<script type="text/javascript">
  onload = function () {
    var e = document.getElementById("refreshed");
    if (e.value == "no") e.value = "yes";
    else {
      e.value = "no";
      location.reload();
    }
  };
</script></code>

Ces solutions devraient actualiser votre page lorsque vous appuyez sur le bouton de retour, activant ainsi la fonctionnalité souhaitée sans nécessiter de configurations .htaccess complexes ou d'autres méthodes spécifiques au navigateur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn