minor update
This commit is contained in:
parent
3c2f8d6824
commit
6447626b66
155
log.php
Normal file
155
log.php
Normal file
@ -0,0 +1,155 @@
|
||||
<?php
|
||||
/*if ( !isset($site) )
|
||||
{
|
||||
require_once( "config.inc.php" );
|
||||
header( 'Location: ' . $accueil );
|
||||
}*/
|
||||
//require_once( "db.class.php" );
|
||||
require_once( "entete_mail.php" );
|
||||
|
||||
// $level => INFO, ALERT, ERROR
|
||||
/*function log_write($log, $level=INFO)
|
||||
{
|
||||
global $table_prefix, $webmaster, $headers;
|
||||
$user = ( !empty( $_SERVER["PHP_AUTH_USER"])?$_SERVER["PHP_AUTH_USER"]:'' );
|
||||
$log_mail = str_replace ( "<br />", "\n", $log ) . "\n";
|
||||
$log_mail .= ( !empty( $_SERVER["REQUEST_METHOD"])?'$_SERVER["REQUEST_METHOD"]' . $_SERVER["REQUEST_METHOD"] . "\n":'' );
|
||||
$log_mail .= ( !empty( $_SERVER["QUERY_STRING"])?'$_SERVER["QUERY_STRING"]' . $_SERVER["QUERY_STRING"] . "\n":'' );
|
||||
$log_mail .= ( !empty( $_SERVER["HTTP_ACCEPT_LANGUAGE"])?'$_SERVER["HTTP_ACCEPT_LANGUAGE"]' . $_SERVER["HTTP_ACCEPT_LANGUAGE"] . "\n":'' );
|
||||
$log_mail .= ( !empty( $_SERVER["HTTP_USER_AGENT"])?'$_SERVER["HTTP_USER_AGENT"]' . $_SERVER["HTTP_USER_AGENT"] . "\n":'' );
|
||||
$log_mail .= ( !empty( $_SERVER["REMOTE_ADDR"])?'$_SERVER["REMOTE_ADDR"]' . $_SERVER["REMOTE_ADDR"] . "\n":'' );
|
||||
$log_mail .= ( !empty( $_SERVER["REMOTE_HOST"])?'$_SERVER["REMOTE_HOST"]' . $_SERVER["REMOTE_HOST"] . "\n":'' );
|
||||
$log_mail .= ( !empty( $_SERVER["REMOTE_USER"])?'$_SERVER["REMOTE_USER"]' . $_SERVER["REMOTE_USER"] . "\n":'' );
|
||||
$log_mail .= ( !empty( $_SERVER["REQUEST_URI"])?'$_SERVER["REQUEST_URI"]' . $_SERVER["REQUEST_URI"] . "\n":'' );
|
||||
$log_mail .= "Utilisateur: $user \n";
|
||||
$log_mail .= ( !empty( $_SERVER["ORIG_PATH_INFO"])?'$_SERVER["ORIG_PATH_INFO"]' . $_SERVER["ORIG_PATH_INFO"] . "\n":'' );
|
||||
$log_mail .= ( !empty( $_SERVER["PATH_INFO"])?'$_SERVER["PATH_INFO"]' . $_SERVER["PATH_INFO"] . "\n":'' );
|
||||
$db1 = new db();
|
||||
$db1->open();
|
||||
if( !empty( $db1->connect ) )
|
||||
{
|
||||
$query = 'INSERT INTO ' . $table_prefix . 'logs SET date=NOW(), auteur="' . $db1->protect( $user ) . '", log="' . $db1->protect($log) . '", niveau="' . $level . '"';
|
||||
$db1->query( $query );
|
||||
if ( !$db1->result )
|
||||
{
|
||||
$text = $db1->error() . "\n\n" . $log_mail;
|
||||
mail( $webmaster, "Erreur écriture logs => " . __file__ . " ligne " . __line__, $text, $headers );
|
||||
}
|
||||
$db1->close();
|
||||
}else
|
||||
{
|
||||
echo $db1->error();
|
||||
mail( $webmaster, "Erreur écriture logs => " . __file__ . " ligne " . __line__ , $log_mail, $headers );
|
||||
}
|
||||
if ( $level == ALERT )
|
||||
{
|
||||
mail( $webmaster, "Alerte Site Web", $log_mail, $headers );
|
||||
}elseif ( $level == ERROR )
|
||||
{
|
||||
mail( $webmaster, "Erreur Site Web", $log_mail, $headers );
|
||||
}
|
||||
}*/
|
||||
|
||||
// $db = true -> écrire les logs dans la base (défaut)
|
||||
// $die = true -> execute die()
|
||||
function log_error($log, $w_db=true, $die=false)
|
||||
{
|
||||
global $webmaster, $headers, $accueil, $db;
|
||||
if ( $w_db ) log_write($log, ERROR);
|
||||
echo "$log<br />\n";
|
||||
$log_err = 'erreur dans la requête<br/>un rapport détaillé a été envoyé au webmaster';
|
||||
if ( $die )
|
||||
{
|
||||
echo "\n";
|
||||
die( $log_err );
|
||||
}else
|
||||
{
|
||||
$_SESSION['error'] = $log_err;
|
||||
//header( 'Location: ' . $accueil );
|
||||
}
|
||||
}
|
||||
|
||||
function affich_log( $nl, $np = 1, $level=INFO )
|
||||
{
|
||||
global $table_prefix, $webmaster, $headers, $base_url , $path , $page;
|
||||
if( !empty( $db->open() ) )
|
||||
{
|
||||
$level_s = array( "aucune" , "info" , "alerte" , "erreur" );
|
||||
$query = 'SELECT * FROM ' . $table_prefix . 'logs';
|
||||
if ( $level != 0 )
|
||||
{
|
||||
$query .= " WHERE niveau='" . $level . "'";
|
||||
}
|
||||
$db->query($query) OR log_error($db->error() . "<br />" . __file__ . " ligne " . __line__ );
|
||||
$total_lignes = $db->result->num_rows();
|
||||
if ($total_lignes != 0 )
|
||||
{
|
||||
|
||||
$n_pages = round( $total_lignes / $nl ) +1;
|
||||
|
||||
if ( $np == 0 )
|
||||
{
|
||||
$np = 1;
|
||||
}elseif ( $np > $n_pages )
|
||||
{
|
||||
$np = $n_pages;
|
||||
}
|
||||
echo '<table><tr>';
|
||||
if ( $np > 1 )
|
||||
{
|
||||
echo '<td><a href="logs.php?np=' . ($np - 1) . '">Page précédente</a></td><td>';
|
||||
}
|
||||
echo "\n" . '<form action="none" method="post" enctype="multipart/form-data">';
|
||||
echo 'Page n° <select id="np" name="np" size="0" onchange="window.location.href = \'logs.php?np=\' + document.getElementById(\'np\').value + \'&level=\' + document.getElementById(\'level\').value ;">';
|
||||
for ( $n = 1; $n<= $n_pages; $n++ )
|
||||
{
|
||||
echo '<option value="' . $n . '"';
|
||||
if ( $n == $np )
|
||||
{
|
||||
echo ' selected="selected"';
|
||||
}
|
||||
echo '>' . $n . '</option>';
|
||||
}
|
||||
|
||||
echo '</select><noscript><input type="submit" name="submit" Value="none" /></noscript>';
|
||||
echo "</form>\n</td>";
|
||||
if ( $np < $n_pages )
|
||||
{
|
||||
echo '<td><a href="logs.php?np=' . ($np + 1) . '">Page suivante</a></td>';
|
||||
}
|
||||
echo "\n<td>" . '<form action="none" method="post" enctype="multipart/form-data">';
|
||||
echo "niveau de log" . ' <select id="level" size="0" onchange="window.location.href = \'logs.php?np=\' + document.getElementById(\'np\').value + \'&level=\' + document.getElementById(\'level\').value ;">';
|
||||
for ( $n = 0; $n <= count( $level_s ) - 1; $n++ )
|
||||
{
|
||||
echo '<option value="' . $n . '"';
|
||||
if ( $n == $level )
|
||||
{
|
||||
echo ' selected="selected"';
|
||||
}
|
||||
echo '>' . $level_s[ $n ] . '</option>';
|
||||
}
|
||||
|
||||
echo '</select><noscript><input type="submit" name="submit" Value="Envoyer" /></noscript>';
|
||||
echo "</form>\n</td></tr>";
|
||||
$query = 'SELECT * FROM ' . $table_prefix . 'logs';
|
||||
if ( $level != 0 )
|
||||
{
|
||||
$query .= " WHERE niveau='" . $level . "'";
|
||||
}
|
||||
|
||||
$query .= ' ORDER BY date DESC LIMIT ' . ( ( ( $np - 1 ) * $nl ) ) . ',' . $nl;
|
||||
$db->query( $query ) OR log_error( $db->error( ) . "<br />" . __file__ . " ligne " . __line__ );
|
||||
echo "<table border='1' width='90%'><tr><td><b>date</b></td><td><b>auteur</b></td><td><b>log</b></td><td><b>niveau</b></td></tr>\n";
|
||||
while ( $db->connect->mysqli_fetch_array( $db->result ) )
|
||||
{
|
||||
$niveau = $donnees["niveau"];
|
||||
echo "<tr><td>" . $donnees["date"] . "</td><td>" . $donnees["auteur"] . "</td><td>" . $donnees["log"] . "</td><td>" . $level_s[ $niveau ] . "</td></tr>\n";
|
||||
}
|
||||
echo "</table>\n";
|
||||
}else
|
||||
{
|
||||
"aucune réponse";
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
@ -2,4 +2,5 @@
|
||||
ini_set('display_errors', 1);
|
||||
ini_set('display_startup_errors', 1);
|
||||
error_reporting(E_ALL);
|
||||
set_include_path ("include/")
|
||||
?>
|
||||
|
Reference in New Issue
Block a user