Example de page ERROR.PHP avec formulaire d'email en cas d'erreur interne
11 messages
• Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
- asiansnakewine
- Nouveau WRInaute

- Messages: 10
- Inscription: 5 Sep 2006
Example de page ERROR.PHP avec formulaire d'email en cas d'e
Example de page ERROR.PHP avec formulaire d'email en cas d'erreur interne du serveur (internal server error)
Bonjour,
Je suis à la recherche d'un script PHP de formulaire d'envoi d'email.
C'est pour installer sur une page ERROR.PHP que le serveur affichera en cas d'erreur interne du serveur (j'aimerais que ce soit un formulaire à remplir pour me signaler l'erreur).
Je sais déjà qu'il faut rajouter cette ligne dans le .htacess:
ErrorDocument 503 /error.php
Mais je n'ai pas encore la page error.php
Merci pour votre aide.
Bonjour,
Je suis à la recherche d'un script PHP de formulaire d'envoi d'email.
C'est pour installer sur une page ERROR.PHP que le serveur affichera en cas d'erreur interne du serveur (j'aimerais que ce soit un formulaire à remplir pour me signaler l'erreur).
Je sais déjà qu'il faut rajouter cette ligne dans le .htacess:
ErrorDocument 503 /error.php
Mais je n'ai pas encore la page error.php
Merci pour votre aide.
- Hartas
- WRInaute discret

- Messages: 66
- Inscription: 12 Nov 2006
et pourquoi ne pas mettre dans ton code une petite fonction mail(), pour te le signaler directement ?? L'internaute arrive sur une page qui ne marche pas et en plus tu lui demandes de remplir un formulaire afin de te contacter...il est gentil l'internaute 
- asiansnakewine
- Nouveau WRInaute

- Messages: 10
- Inscription: 5 Sep 2006
Le problème c'est qu'en faisant comme cela je vais recevoir des dizaines d'emails si je ne répare pas de suite, à moins qu'il y ait une possibilité de limiter le nombre d'envoi d'emails automatiques à 1 toutes les demi heures par exemple ?
Connaissez vous un script ?
Merci beaucoup.
Asian-Snake-Wine.com
Connaissez vous un script ?
Merci beaucoup.
Asian-Snake-Wine.com
-

UsagiYojimbo - WRInaute accro

- Messages: 8575
- Inscription: 23 Nov 2005
Tu peux aussi faire une table où tu insères le message d'erreur et la page incriminée, de manière à ne faire qu'un envoi de mail pour chaque couple erreur - page.
- kitten13
- WRInaute discret

- Messages: 213
- Inscription: 30 Avr 2007
Slt,
Voici ce que j'utilise :
page error.php
Dans ton hatcess
Voila tout simple
Voici ce que j'utilise :
page error.php
- Code: Tout sélectionner
<?php
$email_admin = "ton_mail@gmail.com";
$monsite = "nom_du_site" ; // utile si vous administrez plusieurs sites
$message_titre = "[Erreur 404 " . $monsite . "] " . $_SERVER['REQUEST_URI'] ;
$message_corps = "Erreur 404 sur le site " . $monsite . ".\r\n" .
"Une page demandée n’a pas été trouvée. \r\n" .
"Url de la page : " . $_SERVER['REQUEST_URI'] . "\r\n" .
"Url de provenance : " . $_SERVER['HTTP_REFERER'] . "\r\n" .
"IP du visiteur : " . $_SERVER['REMOTE_ADDR'] . "\r\n" .
"Navigateur : " . $_SERVER['HTTP_USER_AGENT'] . "\r\n" .
"Heure de la requête : " . date('d/m/Y G:i:s') . "\r\n" .
"Contenu brut du tableau global $_SERVER : " . print_r($_SERVER,true) ;
// Envoi du message
mail($email_admin, $message_titre, $message_corps) ;
// Ci-dessous, affichez votre page 404 sur mesure pour le visiteur.
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title><?php echo $page_title; ?></title>
<base href="<?php echo $script_url; ?>/">
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo $langx['charset']; ?>">
</head>
<body>
blablabla ...
</body>
</html>
Dans ton hatcess
- Code: Tout sélectionner
# Error 404
ErrorDocument 404 /error.php
Voila tout simple
- asiansnakewine
- Nouveau WRInaute

- Messages: 10
- Inscription: 5 Sep 2006
kitten13 a écrit:Slt,
Voici ce que j'utilise :
page error.php
- Code: Tout sélectionner
<?php
$email_admin = "ton_mail@gmail.com";
$monsite = "nom_du_site" ; // utile si vous administrez plusieurs sites
$message_titre = "[Erreur 404 " . $monsite . "] " . $_SERVER['REQUEST_URI'] ;
$message_corps = "Erreur 404 sur le site " . $monsite . ".\r\n" .
"Une page demandée n’a pas été trouvée. \r\n" .
"Url de la page : " . $_SERVER['REQUEST_URI'] . "\r\n" .
"Url de provenance : " . $_SERVER['HTTP_REFERER'] . "\r\n" .
"IP du visiteur : " . $_SERVER['REMOTE_ADDR'] . "\r\n" .
"Navigateur : " . $_SERVER['HTTP_USER_AGENT'] . "\r\n" .
"Heure de la requête : " . date('d/m/Y G:i:s') . "\r\n" .
"Contenu brut du tableau global $_SERVER : " . print_r($_SERVER,true) ;
// Envoi du message
mail($email_admin, $message_titre, $message_corps) ;
// Ci-dessous, affichez votre page 404 sur mesure pour le visiteur.
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title><?php echo $page_title; ?></title>
<base href="<?php echo $script_url; ?>/">
<meta http-equiv="Content-Type" content="text/html; charset=<?php echo $langx['charset']; ?>">
</head>
<body>
blablabla ...
</body>
</html>
Dans ton hatcess
- Code: Tout sélectionner
# Error 404
ErrorDocument 404 /error.php
Voila tout simple
Bonjour, est-ce compliqué de rajouter du code à ce script pour limiter l'envoi d'email à 1 toutes les 10 minutes par exemple, car c'est pour un site à fort trafic ?
Je saurais intégrer ce script mais je ne programme pas, donc merci pour votre aide!
- Hartas
- WRInaute discret

- Messages: 66
- Inscription: 12 Nov 2006
c'est un peu de la bidouille, mais tu peux stocker une variable à 1 par exemple. Si var=1 AND "ta page d'erreur" => le mail part et tu passes la var à 0. Comme ça il ne part qu'une seul fois.
Ensuite, sois tu as un cron qui recharge ta variable à 1 toute les 15mn par exemple, sois tu le change à la main une fois le problème réglé avec le risque d'oublier...
Ensuite, sois tu as un cron qui recharge ta variable à 1 toute les 15mn par exemple, sois tu le change à la main une fois le problème réglé avec le risque d'oublier...
- kitten13
- WRInaute discret

- Messages: 213
- Inscription: 30 Avr 2007
Bon je vous mais aussi une autre parti de mon script aussi
alertes e-mail pour les erreurs MySQL
Voila tout simple, maintenant dormez sur vos deux oreilles
alertes e-mail pour les erreurs MySQL
- Code: Tout sélectionner
<?php
function mysql_requete($requete, $msg_erreur = "Erreur indéfinie")
{
$resultat = mysql_query($requete);
if (mysql_error())
{
$message_destinataire = "admin@monsite.com";
$message_titre = "Erreur MySQL sur le script " . $_SERVER['REQUEST_URI'] ;
$message_corps = "Une erreur MySQL s'est produite sur le script " . $_SERVER['REQUEST_URI'] . "\r\n" .
"Nature de l'erreur :\r\n" .
mysql_error() . "\r\n" .
"----------------------------------------------\r\n" .
"Requête SQL : \r\n" .
$requete . "\r\n" .
"----------------------------------------------\r\n" .
"Variables d'environnement SERVER : \r\n" .
print_r($_SERVER, true) . "\r\n" .
"----------------------------------------------\r\n" .
"Variables d'environnement REQUEST : \r\n" .
print_r($_REQUEST, true) . "\r\n"
"----------------------------------------------\r\n" .
"Variables d'environnement COOKIE : \r\n" .
print_r($_COOKIE, true) . "\r\n"
"----------------------------------------------\r\n" .
"Variables d'environnement SESSION : \r\n" .
print_r($_SESSION, true) . "\r\n";
;
mail($message_destinataire, $message_titre, $message_corps);
}
return $resultat;
}
?>
Voila tout simple, maintenant dormez sur vos deux oreilles
- kitten13
- WRInaute discret

- Messages: 213
- Inscription: 30 Avr 2007
Re: Example de page ERROR.PHP avec formulaire d'email en cas d'e
Voici le code modifié est améliorer :
Dans le .htaccess :
Dans page erreur.php :
[code]switch ($_SERVER['REDIRECT_STATUS']) {
case 401:
$mess_erreur = 'Accès à la ressource refusé';
break;
case 403:
$mess_erreur = 'Refus de traitement de la requête';
break;
case 404:
$mess_erreur = 'Document non trouvé';
$logoErreur = '404';
break;
case 410:
$mess_erreur = 'La ressource est indisponible et aucune adresse de redirection n\'est connue';
}
if (!eregi('(cltreq.asp|owssvr.dll|_vti)', $_SERVER['REQUEST_URI']) && $_SERVER['REDIRECT_STATUS'] != 410 ) {
if (empty($_SERVER['HTTP_REFERER'])) {
$provenance = 'Connexion directe';
}
else {
$provenance = $_SERVER['HTTP_REFERER'];
}
$mess = 'Erreur internet '.$_SERVER['REDIRECT_STATUS']."\n\r";
$mess .= 'Provenance : '.$provenance."\n\r";
$mess .= 'Url demandée : '.$_SERVER['REQUEST_URI']."\n\r";
$mess .= 'Navigateur utilisé : '.$_SERVER['HTTP_USER_AGENT']."\n\r";
$mess .= 'Nom de Domaine : '.gethostbyaddr($_SERVER['REMOTE_ADDR'])."\n\r";
$mess .= 'IP du visiteur : '.$_SERVER['REMOTE_ADDR'];
$to = email@levotre.com;
$subject = 'Erreur internet '.$_SERVER['REDIRECT_STATUS'];
$message = $mess;
$headers = 'From: noreply@levotre.com'."\r\n".'Reply-To: noreply@levotre.com'."\r\n";
mail($to, $subject, $message, $headers);
}[/code
Bien plus simple et propre que mon bout de code fournis plus haut, merci à l'auteur original.
La source : http://www.webrankinfo.com/forums/viewtopic_61084.htm
Dans le .htaccess :
- Code: Tout sélectionner
ErrorDocument 400 /erreur.php
ErrorDocument 401 /erreur.php
ErrorDocument 403 /erreur.php
ErrorDocument 404 /erreur.php
ErrorDocument 410 /erreur.php
ErrorDocument 500 /erreur.php
Dans page erreur.php :
[code]switch ($_SERVER['REDIRECT_STATUS']) {
case 401:
$mess_erreur = 'Accès à la ressource refusé';
break;
case 403:
$mess_erreur = 'Refus de traitement de la requête';
break;
case 404:
$mess_erreur = 'Document non trouvé';
$logoErreur = '404';
break;
case 410:
$mess_erreur = 'La ressource est indisponible et aucune adresse de redirection n\'est connue';
}
if (!eregi('(cltreq.asp|owssvr.dll|_vti)', $_SERVER['REQUEST_URI']) && $_SERVER['REDIRECT_STATUS'] != 410 ) {
if (empty($_SERVER['HTTP_REFERER'])) {
$provenance = 'Connexion directe';
}
else {
$provenance = $_SERVER['HTTP_REFERER'];
}
$mess = 'Erreur internet '.$_SERVER['REDIRECT_STATUS']."\n\r";
$mess .= 'Provenance : '.$provenance."\n\r";
$mess .= 'Url demandée : '.$_SERVER['REQUEST_URI']."\n\r";
$mess .= 'Navigateur utilisé : '.$_SERVER['HTTP_USER_AGENT']."\n\r";
$mess .= 'Nom de Domaine : '.gethostbyaddr($_SERVER['REMOTE_ADDR'])."\n\r";
$mess .= 'IP du visiteur : '.$_SERVER['REMOTE_ADDR'];
$to = email@levotre.com;
$subject = 'Erreur internet '.$_SERVER['REDIRECT_STATUS'];
$message = $mess;
$headers = 'From: noreply@levotre.com'."\r\n".'Reply-To: noreply@levotre.com'."\r\n";
mail($to, $subject, $message, $headers);
}[/code
Bien plus simple et propre que mon bout de code fournis plus haut, merci à l'auteur original.
La source : http://www.webrankinfo.com/forums/viewtopic_61084.htm
11 messages
• Page 1 sur 1
Formation recommandée sur ce thème :
Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Erreur PHP PDO (Fatal error: Call to a member function query() on a non-object ...)
- Erreur simplexml parser error : xmlParseEntityRef: no name
- Erreur 500 - Internal server error
- Error code 404 => Une erreur Adsence ?
- SPIP : problème erreur 500 Internal Server Error
- PB redirection php header(Location: erreur.php?erreur=404)
- erreur wordpress depuis ce matin error number 497@85.57.192.
- erreur Apache : "Request failed: error reading the head
- Retour erreur email wanadoo/orange
- erreur email : désinscrire automatiquement d'un newsletter
- Mise à jour des services Postini - 11-02-2009
- Un moyen très simple et gratuit d'obtenir des backlinks - 08-12-2008
- Nombreuses erreurs 404 : impact sur le référencement - 30-03-2010
- Votre site doit toujours être accessible rapidement : conseil n°7 en référencement - 04-08-2008
- Alerte Google Dance - 08-09-2008
- Invitation Gmail - Obtenir un compte Gmail - 15-06-2004
- Google écrit parfois au webmaster en cas de blacklistage - 16-09-2005
- Calcul du ratio de liens profonds vers un site web - 14-05-2006
Consultez la description détaillée des produits ou services de Google suivants : Hello, Google mail
- Calcul du taux de liens vers des pages internes
Cet outil vous permet de calculer le taux de liens profonds vers un site web. Un lien profond est un lien qui ne pointe pas vers la page d'accueil mais au contraire vers une page interne du site. Les sites dont l'essentiel du référencement vient de leurs inscriptions dans des annuaires ont un taux de liens profonds faible ; à l'inverse, les sites de référence ont souvent un taux de liens profonds plus important, signe que leur contenu a suscité de nombreux liens spontanés.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités

