Função redirect funciona só no navegador IEXPLORER e não em Firfefox ou Chromje

05/02/2016

1

Olá pessoal

Tenho no meu site de Genealogia um formulário que colhe dados do visitante e que são enviados para meu e-mail.

Preciso que o visitante, após preencher corretamente e clicar em ENVIAR seja direcionado para uma página de agradecimento (redirect) ...


<input type="hidden" name="redirect" value="http://www.strassburgerweb.com/obrigado_faleconosco.html">

Funciona bem quando usado no Iexplorer, mas "empaca" quando o visitante usa Firefox ou Chrome.

O formulário pode ser visto (e preenchido como teste) em...

Site de Genealogia

A página de confirmação e agradecimento que abre no navegador IEXPLORER (e NÃO em Firefox nem Chrome) é:

[url:descricao=Página de agradec imento (redirecionada)]http://www.strassburgerweb.com/obrigado_faleconosco.html[/url]
Estou intrigado com esta situação..pois não achno uma solução para o caso.

Alguém tem alguma idéia a respeito?
Responder

Posts

05/02/2016

Jothaz

Internet Explore renderiza qualquer coisa, pois não leva as especificações do W3C muito a sério. Na minha opinião e me desculpe o palavreado é uma bosta, pois nada melhor que seguir um padrão que garanta que sua página ser renderizado corretamente independente do browser.

Trabalho a muito tempo com desenvolvimento web e nunca tinha visto este tipo de uso do input:

<input type="hidden" name="redirect" value="http://www.strassburgerweb.com/obrigado_faleconosco.html">


Não era para funcionar mesmo principalmente em browsers aderentes ao W3C, pois sinceramente nem sei como esta funcionando no IExplorer. Se não tivesse acessado e visto nem acreditaria que funciona.

Se entendi bem você quer que sua página tenha dois redirecionamentos uma para: http://www.strassburgerweb.com/cgi-bin/formmail.cgi e outro para http://www.strassburgerweb.com/obrigado_faleconosco.htm? É isto mesmo?

O ideal seria de formmail.cgi redirecionar para a página obrigado_faleconosco.htm, você tem acesso ao fonte de formmail.cgi?

Verei se penso em alguma coisa e post e vamos esperar outras sugestões dos participantes.
Responder
Olá Jothaz
Muito obrigado pela tua resposta.
Realmente o IExplorer deixa muito a desejar, como muita coisa da Microsoft.
Por esta razão que uso já ha muito tempo o Firefox como meu navegador principal.
Mas como tem muita gente que ainda usa, esta tua afirmação é bastante válida, qual seja:
"...nada melhor que seguir um padrão que garanta que sua página ser renderizado corretamente independente do browser...."
Pois bem, os dados do remetente do formulário chegam corretamente no meu e-mail, tanto pelo IEXPLORER, firefox ou Chrome.
A única coisa que não funciona é o REDIRECT para a página de agradecimento, no Firefox, Chrome, etc...
Quanto ao acesso ao formail.cgi que está hospedado no meu servidor na pasta CGI-BIN, posso acessar sim via FTP, e obviamente editar.
Como posso te mandar os arquivos que aí estão para teres uma ideia melhor do assunto?
formmail.cgi.... 2kb
FormMail.pl....24kb
Mai uma vez, um baita abraço
Porto Alegre, 07 FEV 2016
IAS
Responder

07/02/2016

Jothaz

Trabalho com muitos produtos da Microsoft e não posso reclamar da qualidade, pois me atendem perfeitamente. O problema é com o IE, principalmente com as versões mais antigas. Trabalho em muitos projetos de intranet´s corporativas e neste caos tenho de garantir compatibilidade até com IE 6 o que é osso.

Concordo que uma página Web deve rodar em qualquer browser, mas é mais fácil falar que fazer. O Chrome mesmo anda dando um escorregada na aderência aos padrões, mas já viu né ninguém fala, pois o "Google é do bem"! kkk

Nunca passei por algo assim, no seu lugar eu criaria um página para enviar e-mails, sei lá em PHP mesmo e resolveria a parada. E mais simples e produtivo controlar todos os aspectos de sua aplicação.

Sei que é possível chamar mais de um função no clique de um botão, então talvez isto possa ajudá-lo, mas não posso garantir.

Veja um exemplo abaixo, no caso ao invés de usar o botão submit usei o submit vai JavaScritp. Teste e veja se lhe ajuda ou inspira em descobrir uma solução.

Foi a única forma que pensei. Mas vamos esperar outras sugestões.

<!DOCTY PE html>
<html>
<head>
<script type='text/javascript'>
    function chamaEmail(){
        document.meuform.submit();    
        console.log('email');
    }
    
    function chamaObrigado(){
       document.href="http://www.strassburgerweb.com/obrigado_faleconosco.htm";    
       console.log('obrigado');
    }  

</script>

  
</head>

<body>
<form name="meuform" id="meuform" action="http://www.strassburgerweb.com/cgi-bin/formmail.cgi">
  <button onclick="chamaObrigado();chamaEmail()">Cique aqui</button>

 </form>    
</body>

</html>
Responder
Olá Jothaz
Fico muito agradecido pelo teu empenho.em me ajudar.
Infelizmente, após tentar várias vezes, o script que gentilmente enviaste, não funcionou.
Acho que talvez eu esteja fazendo alfo errado.
Penso que se analisares os arquivos .cgi acima mencionados, acharás onde está o "furo".
Faz o seguinte: Preenche o formulario com teu emdereço de e-mail e me manda.
Em seguida mandarei para teu e-mail, como anexos ,os 2 arquivos.
http://www.strassburgerweb.com/dados_genealogia.htm
Baita abraço
Porto Alegre, 08 JAN 2016
IAS
Responder