Header can not find the last destination

Posted on

Question :

I’m working on a project and the header function can not find the destination passed to it. I have the following folder structure:


<formmethod="post" action="index.php?pagina=../controller/controllerCategoria">

So far so good, but what I would like is that when I got to that file, I would be able to return to a file within admin .

I was trying with the following header :


In this case, I would like to go back to the file criarPaginas.php .

I have not put the% point of% because in my PHP I have a script that always assigns the contents of the page variable.


Answer :

Well, I managed to solve it, what apparently happens is that my server in my application in the APACHE case starts to send the response of the requested request before actually arriving at the Header() function ie sending a body in the application layer in this case using the HTTP protocol this usually occurs by echo print functions or spaces before my PHP tags -- <?php found a function whose in ob_start it solves the problem because it holds this content before finalization. In my code I decided the following way, since I’m centralizing my application in ‘

<body> <?php
if (isset($_GET["pagina"])) {
    require ($_GET["pagina"] . ".php");
} else {
    echo "<h1>Bem vindo ao sistema</h1>";

So bringing all the pages to the same top and footer, then there was a HTML code before starting this script, I imagine that the same would be sent before the HEADER() function itself, in fact the ideal would be to do test in reader of snifer as wireshark so I’m guessing that this happened, in my case I put the following code first of all in my index.php <?php ob_start(); ?> and my HEADER that was in another directory I just put it next way header("Location: index.php?pagina=criarPaginas") which redirects to another directory of my application, I thank everyone even @ Vinícius Gobbo A. de Oliveira


Leave a Reply

Your email address will not be published. Required fields are marked *