我根据PHP请求加载一个php页面:
<div id="mainContent">
<?php
if(isset($_GET['incidentsView'])) {
include ("incidents.php");
}
?>
</div>
导航
<div class="sidebar-nav navbar-collapse" id="sidebarNavigationList">
<ul class="nav in" id="side-menu">
<li><a href="index.php?incidentsView" id="pageIncidents">Einsatzliste</a></li>
</ul>
</div>
incidents.php页面本身包含一个表单,其中在POST变量中评估提交按钮:
if(isset($_POST['submit'])) {
header('Location: '.$_SERVER['REQUEST_URI']);
}
以便在按下提交按钮时重新加载页面。在此页面中是一个显示SQL DB内容的表。点击提交按钮后,所有内容都会刷新,包括带有新数据的表格。如果我直接加载incidents.php,那很好。但是,当我加载index.php并将incidents.php包含在index.php中时,按下按钮,根本没有任何内容刷新。只有当我再次单击菜单中的链接时。我怎么需要重写我的代码,即使我在index.php上,这个刷新工作正常?
答案 0 :(得分:0)
在输出一些HTML(incidents.php
)之后,您将<div id="mainContent">
包括在内,并且在您之后无法发送header()
已输出一些内容。您有两个选择:
header()
。使用incidents.php
中的JavaScript重定向代替:
if(isset($_POST['submit'])) {
echo '<script>location.href = ' . $_SERVER['REQUEST_URI']) . ';</script>';
}