У меня есть панель навигации от bootstrap3.3. У меня также есть различные формы на этой странице, которые перенаправляются с указанием местоположения заголовка при отправке формы. Всякий раз, когда я добавляю какую-либо дополнительную форму или раскрывающийся список на панель навигации (в отличие от тела страницы), местоположение заголовка перестает перенаправляться (запрос по-прежнему выполняется в БД как обычно).
Они должны быть полностью независимы друг от друга, поэтому я запутался, если это ошибка с bs 3.3? Или мой код неисправен/я сделал глупую ошибку?
запрос формы работает отлично, но расположение заголовка только в том случае, если моя панель навигации относительно проста.
$result = $this->db_query($query);
if ($result){
header("Location: https://somepage.com?message=submitted");
}
все еще работает с этим:
<nav class = "navbar navbar-default">
<div class = "container">
<div class = "navbar-header">
<a class = "navbar-brand" href = "https://somepage.com">Brand</a>
</div>
<div id = "navbar" class = "navbar-collapse collapse">
<ul class = "nav navbar-nav">
<li ><a href = "#">Home</a></li>
<li><a href = "#about">About</a></li>
<li><a href = "#contact">Contact</a></li>
</ul>
<ul class = "nav navbar-nav navbar-right">
<li><a href = "https://somepage.com/test1.php?action=order">Order</a></li>
<li><a href = "https://somepage.com/page2.php">Collections</a></li>
<li><a href = "https://somepage.com/page3.php">Summary</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</nav>
но не будет работать с этим (попробовал форму поиска и выпадающего списка отдельно и вместе)
<nav class = "navbar navbar-default">
<div class = "container">
<div class = "navbar-header">
<a class = "navbar-brand" href = "https://somepage.com">Brand</a>
</div>
<div id = "navbar" class = "navbar-collapse collapse">
<ul class = "nav navbar-nav">
<li ><a href = "#">Home</a></li>
<li><a href = "#about">About</a></li>
<li><a href = "#contact">Contact</a></li>
<li class = "dropdown">
<a href = "#" class = "dropdown-toggle" data-toggle = "dropdown" role = "button" aria-expanded = "false">Filter<span class = "caret"></span></a>
<ul class = "dropdown-menu" role = "menu">
<li><a href = "https://somepage.com/test1.php">test1</a></li>
<li><a href = "https://somepage.com/test2.php">test2</a></li>
<li><a href = "https://somepage.com/test3.php">test3</a></li>
</ul>
</li>
</ul>
<ul class = "nav navbar-nav navbar-right">
<li><form class = "form-inline" method = "POST" action = "">
<div class = "form-group">
<input type = "text" class = "form-control" id = "search" name = "search" placeholder = "Search">
</div>
<button type = "submit" name = "search" class = "btn btn-secondary mb-2">Search</button>
</form></li>
<li><a href = "https://somepage.com/test1.php?action=order">Order</a></li>
<li><a href = "https://somepage.com/page2.php">Collections</a></li>
<li><a href = "https://somepage.com/page3.php">Summary</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</nav>
Возможно, это не имеет значения, но не забудьте использовать die() после перенаправления, потому что PHP продолжит выполнение. Ежедневный WTF






Я могу обойти этот процесс, поставив: action=somepage.com?message=отправлено, но мне любопытно, почему это все равно не сработает.