单击链接时PHP重新加载页面

时间:2014-01-21 15:16:15

标签: javascript php caching hyperlink reload

我想要在用户点击链接时重新加载我的页面。 我正在使用window.location.reload(true)函数,这重新加载了页面,但它使用了缓存版本。我想让它完全重装! 我正在使用谷歌浏览器来测试我的主页!

当前代码:

for ($i=0; $i<count($files); $i++) {
$image = $files[$i];
echo '<tr><td>';
echo '<img src="';
echo $image;
echo '" width="120" height="100"></td>';
$link = '<a href="deletesingle.php?bild=' . $image . '" target="_blank"' .  'onClick="window.location.reload(true);">';
echo '<td>';
echo $link;
echo 'L&ouml;schen!</a>';
echo '</td></tr>';

}

4 个答案:

答案 0 :(得分:0)

假设您的文件名为:

<强> list.php的

for ($i=0; $i<count($files); $i++) {
$image = $files[$i];
echo '<tr><td>';
echo '<img src="';
echo $image;
echo '" width="120" height="100"></td>';
$link = '<a href="deletesingle.php?bild=' . $image . '">';
echo '<td>';
echo $link;
echo 'L&ouml;schen!</a>';
echo '</td></tr>';

deletesingle.php

//Your code to delete image

//redirect back to list.php
header('location: deletesingle.php');

问候。

答案 1 :(得分:0)

使用_blank值离子,attribut目标将请求发送到新页面或新选项卡。 您可以调用deletesingle.php页面并使用参数重定向到列表,例如?no_cache = 1

然后,在您的列表页面中,如果设置了$ _GET ['no_cache'],则强制标题以防止缓存

<?php
if (isset($_GET["no_cache"] && $_GET["no_cache"] == 1) {
    header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
    header("Cache-Control: post-check=0, pre-check=0", false);
    header("Pragma: no-cache");
}
?>

答案 2 :(得分:0)

让我用简化的模型来捕捉你的需求:

你有一个当前页面,我们称之为“images.php”。它列出了每个图像的删除按钮。

如果在不使用window.reload的情况下单击当前页面上的任何链接,它将加载而不进行缓存。但是您也希望页面执行删除操作。最好将删除逻辑与列表结合起来。

<?php
//images.php

if ($action=='delete'&&is_numeric($_GET['imageid'])){
  //delete the image here
}

//list the images here
...
}

将新的删除链接设为images.php?action = delete&amp; imageid = imageid

答案 3 :(得分:0)

<?php 
$page = $_SERVER['PHP_SELF'];
print "<a href=\"$page\">Reload this page</a>";
?>