ISN (services de réseaux sociaux internationaux - applications interactives et sites web dynamiques)
Exemple de fonction pour envoyer des e-mail en cas d'erreur - scripts PHP
<?php
function reported()
{
$domain = 'mydomain.com';
// ---------------------------------------------------------------
if( isset($_COOKIE['error']) )
{
$_COOKIE['error'] = unserialize( $_COOKIE['error'] );
if( in_array($_SERVER['REQUEST_URI'], $_COOKIE['error']) )
{
return TRUE;
}
}
$_COOKIE['error'][] = $_SERVER['REQUEST_URI'];
$value = serialize( $_COOKIE['error'] );
setcookie( 'error', $value, time() + 24*60*60, '/', './'.$domain, 0 );
unset( $domain, $value );
return FALSE;
}
function error($error='Undefined')
{
if( !reported() )
{
$to = 'someone@example.com';
$subject = "Error type $error has occured on $_SERVER['REQUEST_URI']";
// set the MESSAGE: e-mail
$message = " $error has occured on page:\n"
." //www.{$_SERVER['SERVER_NAME']}{$_SERVER['REQUEST_URI']}\n"
." Referring Page: ".( isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : 'Unknown' )." \n"
." Time: ".date('r')."\n"
." From IP: {$_SERVER['REMOTE_ADDR']}\n\n"
."Please Investigate the problem ASAP";
$headers = "From: webserver@{$_SERVER['SERVER_NAME']}\n"
."Reply-To: webserver@{$_SERVER['SERVER_NAME']}\n"
."X-Mailer: PHP/".phpversion();
// send the email
mail( $to, $subject, $message, $headers );
}
}
/*
EXAMPLE for a 404 error page.
error($error='404 Error');
*/
?>
|