Qual a diferença entre o redirect() para o $this->load->view?
Quando usar cada?
Qual a diferença entre o redirect() para o $this->load->view?
Quando usar cada?
Oi Naun, tudo bom?
O redirect efetua um redirecionamento pelo protocolo HTTP. Ou seja, ele vai retornar 302 ou 301 como resposta pro navegador.
Já load->view, retorna só o HTML para ser renderizado na página. Ou seja, ele retorna o status HTTP 200 =)
Você pode notar a diferença prática pois um altera a url(redirect) e o outro não.
Você usa o redirect, normalmente, nos casos em que sua rota/action realiza alterações no banco de dados ou em arquivos no geral. Ou seja, em requisições do tipo POST, PUT ou DELETE.
Isso porque o usuário final será literalmente redirecionado para outra rota/action o que impede ele de ficar atualizando a página e re-enviando uma requisição complexa ao servidor.
Com requisições de consulta, ou seja do tipo GET, normalmente você só quer exibir algo na tela. Nesse caso basta renderizar o HTML e o $this->load->view cuida bem disso =)
Nesse caso não tem problema o usuário ficar atualizando a página pois é só uma consulta e não corremos o risco de sobrecarregar o servidor.
Espero ter ajudado =)
Abraço
Perfeito. Essa era realmente uma dúvida que eu tinha.
Me perguntava se o redirect era usado no envio de forms assim como usamos o header("Location: page.php");
Muito obrigado