From 1dce831c56f71db946e0fe78c91a3b43ed3eeb44 Mon Sep 17 00:00:00 2001 From: Fil <fil@rezo.net> Date: Sun, 17 Jul 2005 21:10:25 +0000 Subject: [PATCH] =?UTF-8?q?Apr=C3=A8s=20un=20POST=20flinguer=20la=20page?= =?UTF-8?q?=20dans=20le=20cache=20(=C3=A7a=20autorise=20des=20balises=20dy?= =?UTF-8?q?namiques=20qui=20se=20modifient=20d'une=20fois=20=C3=A0=20l'aut?= =?UTF-8?q?re,=20sans=20avoir=20besoin=20d'invalideurs)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- inc-cache.php3 | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/inc-cache.php3 b/inc-cache.php3 index e27bae4b04..1ce2c8538d 100644 --- a/inc-cache.php3 +++ b/inc-cache.php3 @@ -198,20 +198,21 @@ function purger_squelettes() { // Determination du fichier cache (si besoin) function determiner_cache($delais, &$use_cache, &$chemin_cache) { - global $_POST; + global $_SERVER; + + $post = ($_SERVER['REQUEST_METHOD'] == 'POST'); // Le fichier cache est-il valide ? - $use_cache = ($delais != 0 and !count($_POST)); - if ($use_cache) $use_cache = utiliser_cache($chemin_cache, $delais); + if ($delais<>0 AND !$post) + $use_cache = utiliser_cache($chemin_cache, $delais); // Sinon, tester qu'on a la connexion a la base if (!$use_cache) { include_local(_FILE_CONNECT); if (!$GLOBALS['db_ok']) { if (@file_exists($chemin_cache)) - $use_cache = 1; // passer outre - else - { + $use_cache = 1; // passer outre + else { spip_log("Erreur base de donnees & " . "impossible utiliser $chemin_cache"); if (!$GLOBALS['flag_preserver']) { @@ -231,6 +232,13 @@ function determiner_cache($delais, &$use_cache, &$chemin_cache) { define ('spip_interdire_cache', true); } } + + // En cas de POST (et si la connexion est ok) supprimer le cache + // histoire de faciliter la gestion de certaines balises dynamiques + else if ($post AND $chemin_cache) { + supprimer_fichier($chemin_cache); + } + } } -- GitLab