1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

PHP - função echo

Discussão em 'Web Development' iniciada por DahPower, 29 de Dezembro de 2008. (Respostas: 10; Visualizações: 993)

  1. DahPower

    DahPower Power Member

    Boas,

    Alguém me consegue explicar como posso fazer para redireccionar utilizando a função echo?

    Por exemplo:

    Tenho um formulário de contacto em php, no final aparece uma mensagem a confirmar ao utilizador que a foi enviada a questão. Queria que 5 segundos depois, o user fosse redireccionado para o index...

    []'s
     
  2. Baderous

    Baderous Banido

    PHP:
    header("location:index.php");
     
  3. Warlord

    Warlord [email protected] Member

    tb consegues com um javascript e um settimeout
     
  4. p3dro

    p3dro Power Member

    Ou então acho que poderás recorrer a javascript, visto que falas ao fim 5 segundos:

    PHP:
    echo "<script type=\"text/javascript\">setTimeout(\"window.location='paginaXPTO.php'\", 5000);</script>";
     
  5. fil79

    fil79 Power Member

    Código:
    <?php
    if (form foi enviado){
     sleep(5);//suspende a execução por 5 segundos
     ?>
     <script type="text/javascript">
      document.location.href ="if.php";
     </script>
    <?
    }
    ?>
    
     
  6. DahPower

    DahPower Power Member

    obrigado a todos!

    encontrei o que queria:

    cpts
     
  7. Warlord

    Warlord [email protected] Member

    fil79: isso e um pouco estupido, tens conciencia k o sleep fica a correr do lado do servidor... o browser do cliente n chega a terminar o render da pagina enkanto o server estiver em sleep... ja para n falar k ficas uma ligacao ocupada 5 segundos descenessariamente
     
  8. fil79

    fil79 Power Member

    do ponto de vista estético não é realmente o mais adequado mas julgo que faz aquilo que foi pedido...
     
  9. Warlord

    Warlord [email protected] Member

    o problema nao e do ponto de vista estetico, e ma programacao do ponto de vista funcional, mais concretamente o impacto que uma implementacao dessas teria no webserver

    imagina k em vez de 5 segundos ele keria 60, e k tinhas 20 pessoas a fazer um posts consecutivamente. ficavas com 20 ligacoes ao webserver (e mt provavelmente a base de dados) penduradas durante um minuto. nao era preciso mais para ao fim de algum tempo outros clientes comecarem a ter timeouts de ligacao ao server... nao por excesso de carga mas porque o webserver tinha todas as ligacoes ocupadas e estava a fazer sleep ;)

    isso e uma logica de programacao tipica de uma linguagem de programacao k funcione num PC e nao distribuida.

    deve-se ter cuidado extra quando se programa em web...
     
    Última edição: 29 de Dezembro de 2008
  10. fil79

    fil79 Power Member

    sim desse (hipotético) ponto de vista tens razão, fica melhor ser tudo feito do lado do cliente
     
  11. HI

    What more i need.
     

Partilhar esta Página