我正在尝试为 slider 制作一个插件 我已经制作了一个管理面板,我可以更新数据库, 但是在输入新数据并按更新后我遇到了问题 - 它更新了数据库,但它没有显示在页面上。 我需要刷新管理页面,只有刷新后,我才能看到更改。
如何自动刷新页面?
- 我尝试调用js func等:window.location.reload()
- 我尝试了很多,但似乎没有效果
- 我对 JavaScript 有一点了解,但不知道问题是什么以及如何解决
代码:
<form action="" method="post">
<?php
for($i=1; $i<=5; $i++)
{
$sliderows=getSliderData($i);
echo '<div id="single-slide-wrap">
<div id="slide-num">
<p id="stitle"><strong>#'.$i.'</strong></p>
<input name="slideradio" type="radio" value="'.$i.'" />
</div><!--slide-num-->
<div id="slide-pic">
<img alt="" src="'.$sliderows['img'].'" style="width: 120px; height: 80px;" />
</div><!--slide-pic-->
<div id="slide-text">
<strong>Img Url: </strong>'.$sliderows['img'].'<br />
<strong>Title: </strong>'.$sliderows['title'].'<br />
<strong>Url: </strong>'.$sliderows['url'].'<br />
</div><!--slide-text-->
</div><!--single-slide-wrap-->';
}
?>
<h3>update Slider</h3>
IMAGE URL: <input type="text" name="img" />
TEXT: <input type="text" name="text" />
URL: <input type="text" name="url" />
<input type='submit' name="submit" value='update' />
</form>
<?php
if (isset($_POST['submit'])) {
if (isset($_POST['slideradio'])) {
switch ($_POST['slideradio']) {
case '1':
update_slider_db(1);
break;
case '2':
update_slider_db(2);
break;
case '3':
update_slider_db(3);
break;
case '4':
update_slider_db(4);
break;
case '5':
update_slider_db(5);
break;
}
}
}
echo '</div>';
}
最佳答案
如果您想在 javascript 中重新加载页面(问题已用 javascript 标记),您可以使用 Location#reload()方法:
document.location.reload(true);
确保编写代码,以免其在无限重定向循环中运行。
如果您想在 PHP 中重新加载页面,您可以发送重定向 header ,并且作为一个好公民,您可能需要随请求一起发送 302 状态 header 。您可能还应该在抛出该 header 后终止脚本,以确保不执行以下任何代码(如果有)。
<?php
header("HTTP/1.1 302 Found");
header("Location: " + $_SERVER['REQUEST_URI']);
exit;
?>
关于javascript - Wordpress - 更新数据库后如何刷新页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20837469/