Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17503
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como receber um e-mail toda vez que houver erro no site

13-12-2014 16:59

Nesse post mostro como fazer para que você receba um e-mail toda vez que houver um erro em alguma página do seu site.

Os erros mais comuns no site são:

400     Falha no Pedido 401     Requer autorização 403     (Proibido) 404     (Pagina de Erro) 500     (Erro interno do servidor)

Essa personalização requer que seu servidor permita criar ou editar as páginas de erro pelo CPANEL, e que as páginas de erro sejam no formato .shtml
Primeiramente, precisamos ter um modelo para a página de erro, o mesmo segue abaixo:

<html> <head> <title>seudominio.com - ERRO ....</title>   <style type="text/css"> body,td{ font-family:verdana,tahoma; font-size:14px; color:#333333; } h1{color:red;} </style>   </head> <body>   <br /> <center><img src="http://seudominio.com/seulogotipo.gif"></center>   <center> <h1>Erro 404!</h1> <br />   <form action="http://www.seudominio.com/erro.php" method="post"> <table> <tr> <td>A página que você está tentando acessar encontra-se indisponível no momento.<br /><br /> Peço que por favor clique no botão a seguir para informar o problema ao administrador do site.<br /><br /> Após clicar no botão, você será redirecionado para o site Tal.<br /><br /> <input type="hidden" name="url_de_referencia" value="<!--#echo var="HTTP_REFERER" -->"> <input type="hidden" name="ip_do_visitante" value="<!--#echo var="REMOTE_ADDR" -->"> <input type="hidden" name="url_requisitada" value="<!--#echo var="REQUEST_URI" -->"> <input type="hidden" name="nome_do_servidor" value="<!--#echo var="HTTP_HOST" -->"> <input type="hidden" name="navegador_do_visitante" value="<!--#echo var="HTTP_USER_AGENT" -->"> <input type="hidden" name="status_do_erro" value="<!--#echo var="REDIRECT_STATUS" -->"> <center><input type="submit" name="Enviar" value="Informar Erro"></center> </td> </tr> </table> </form>   </center>   </body> </html>

Você vai precisar personalizar as seguintes linhas de acordo com seu site

<title>seudominio.com - ERRO ....</title> - Título da página de erro   <center><img src="http://seudominio.com/seulogotipo.gif"></center> - Logotipo do seu site   <h1>Erro 404!</h1> - Título do erro   <form action="http://www.seudominio.com/erro.php" method="post"> - Arquivo PHP que vai mandar o e-mail para você avisando sobre o erro

O html da página de erro você pode mudar de acordo com sua vontade, mas, mantenha os campos do formulário sem alteração.

O documento erro.php deve ter o seguinte conteúdo:

<?php $data = date("d/m/Y H:i:s"); if(isset($_POST['Enviar'])) { $mensagem = "Data do erro: $data<br /> URL de referência: ".$_POST['url_de_referencia']."<br /> IP do visitante: ".$_POST['ip_do_visitante']."<br /> URL requisitada: ".$_POST['url_requisitada']."<br /> Nome do servidor: ".$_POST['nome_do_servidor']."<br /> Navegador do visitante: ".$_POST['navegador_do_visitante']."<br /> Status do erro: ".$_POST['status_do_erro'].""; $headers = "MIME-Version: 1.1\r\n"; $headers.= "Content-type: text/html; charset=iso-8859-1\r\n"; // personalizar o texto e o e-mail definidos como enviador $headers.= "From: \"Erro no site tal\" <erro@seudominio.com>\r\n"; // personalizar seu e-mail, título do e-mail, mensagem, cabeçalho mail("voce@seusite.com", "Erro no seu site", $mensagem, $headers); echo "<script> alert('Obrigado por informar o erro!'); // personalizar página mostrada após o envio do e-mail location.href='http://www.seudominio.com'; </script>"; exit; } ?>

As alterações a serem feitas já estão comentadas no código.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Mensagens: 285

Como receber um e-mail toda vez que houver erro no site

02-02-2015 11:27

A URL Referencia não vem no e-mail

DATA do erro: 02/02/2015 10:05:42----------------------- OK URL de referência: (NONE) IP do visitante: 111.111.111.111----------------------- OK URL requisitada: /blabla/teste-erro----------------------- OK Nome do servidor: blablabla.com ----------------------- OK Navegador do visitante: blablabla----------------------- OK STATUS do erro: (NONE)

HELP!!!!
0
 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17503
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como receber um e-mail toda vez que houver erro no site

02-02-2015 11:33

A url de referência é passado por <!--#echo var="HTTP_REFERER" --> em um arquivo shtml.

Eu uso esse script aqui no fórum, e sempre recebe a url de referência. É possível que seu servidor não ofereça suporte.

Não sei se você usou o código como página de erro, se não, vá no seu cpanel e adiciona o código como página de erro, quando houver o erro e chegar no arquivo antes do envio, olha pelo código-fonte se o input da url de referência tem algum valor.
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: MSNbot Media