diff --git a/gestion/logs.php b/gestion/logs.php
index 91744f5..bb0d734 100644
--- a/gestion/logs.php
+++ b/gestion/logs.php
@@ -3,6 +3,13 @@
require_once 'config.inc.php';
require_once 'db.class.php';
require_once 'log.php';
-
- affich_log(200);
+ $page = getpost("np");
+ $niveau = getpost("level");
+ print '
+
+ Avion-poème
+
+ ';
+ affich_log(200, $page, $niveau);
+ print '';
?>
diff --git a/gestion/stats.php b/gestion/stats.php
index 5822e03..a4ee2f3 100644
--- a/gestion/stats.php
+++ b/gestion/stats.php
@@ -14,7 +14,7 @@
$result = $db->result->fetch_assoc();
return $result['Auto_increment']-1;
}
- function total()
+ function total() //nombre d'avions poèmes présents dans la base
{
global $db;
$query = "SELECT COUNT(*) as nAvion FROM avionpoeme";
@@ -24,7 +24,7 @@
}
- function totalenvol()
+ function totalenvol() //nombre d'avions poèmes en vol
{
global $db;
$query = "SELECT COUNT(*) as n FROM avionpoeme WHERE public!=2";
@@ -43,7 +43,7 @@
}
- function anonymous()
+ function anonymous() //nombre d'avions poèmes envoyés anonymement
{
global $db;
$query = "SELECT COUNT(*) as n FROM avionpoeme WHERE expemail=''";
@@ -53,21 +53,21 @@
}
- $nAvionCree = totaltotal();
- if ($nAvionCree == 0)
+ $nAvionEnvoye = totaltotal();
+ if ($nAvionEnvoye == 0)
{
echo "Aucun avion-poème envoyé pour l'instant";
}else
{
- echo "Nombre total d'avions-poème : " . $nAvionCree . EOL;
+ echo "Nombre total d'avions-poème : " . $nAvionEnvoye . EOLH;
$total = total();
- $avionSupp = $nAvionCree-$total;
- echo "Nombre d'avion supprimés : " . $avionSupp . " => " . $avionSupp/$nAvionCree*100 . "%" . EOL;
+ $avionSupp = $nAvionEnvoye-$total;
+ echo "Nombre d'avion supprimés : " . $avionSupp . " => " . round($avionSupp/$nAvionEnvoye*100,3) . "%" . EOLH;
$nAvionenvol = totalenvol();
- echo "Nombre d'avions-poème en vol : " . $nAvionenvol . " => " . $nAvionenvol/$nAvionCree*100 . "%" . EOL;
+ echo "Nombre d'avions-poème en vol : " . $nAvionenvol . " => " . round($nAvionenvol/$nAvionEnvoye*100) . "%" . EOLH;
$anonymous = anonymous();
- echo "Nombre d'envois anonymes : " . $anonymous . " => " . $anonymous/$nAvionCree*100 . "%" . EOL;
+ echo "Nombre d'envois anonymes : " . $anonymous . " => " . round($anonymous/$nAvionEnvoye*100) . "%" . EOLH;
}
diff --git a/include/db.class.php b/include/db.class.php
index 079f9c5..5061988 100644
--- a/include/db.class.php
+++ b/include/db.class.php
@@ -91,7 +91,7 @@ class db
$this->result = $this->connect->query( $string ) ;
- if ( $this->connect->error ) log_error( "Échec de la commande query => " . $this->connect->error . "
" . __file__ . ' ligne ' . __line__ . "\n" . $string, true, false);
+ if ( $this->connect->errno > 0 ) log_error( "Échec de la commande query => " . $this->connect->error . "
" . __file__ . ' ligne ' . __line__ . "\n" . $string, true, false);
//print_r( $this );
}
diff --git a/include/fonctions.inc.php b/include/fonctions.inc.php
index 86edc74..c4f3388 100644
--- a/include/fonctions.inc.php
+++ b/include/fonctions.inc.php
@@ -90,41 +90,49 @@ function replaceVariables($db, $text, $dico) :array
while( 1 )
{
// Recherche les variables dans le texte
+ if ($x++ >10 ) break; // empêche une boucle sans fin, il n'y a pas plus de 10 variables par texte
$posVar = strpos( $text, "$", $posVar);
if ($posVar !== false)
{
// une variable a été trouvée
- if ($x++ >10 ) break; // empêche une boucle sans fin, il n'y a pas plus de 10 variables par texte
$posEsp = strpos( $text, " ", $posVar);
if ($posEsp === false)
{
$var = substr($text, $posVar+1, strlen($text)-$posVar);
}else
{
- $var = substr($text, $posVar+1, $posEsp-$posVar-1);
+ if ($posEsp == $posVar+1)
+ {
+ $var = "";
+ }else
+ {
+ $var = substr($text, $posVar+1, $posEsp-$posVar-1);
+ }
}
$posVar = $posEsp+1;
- $var = trim($var, " .\n\r)");
-
- $varReplace = "$" . $var;
- if ( isset ($variables[$var]) )
+ if ($var != "")
{
- $dbVar = $variables[$var];
- $varText = $db->$dbVar;
- //$text = str_replace($varReplace, $db->$dbVar, $text);
- }elseif ( isset ($dico[$var]) )
- {
- $varText = $dico[$var];
- //$text = str_replace($varReplace, $dico[$var], $text);
- }else
- {
- log_error( "La variable => " . $var . "n'est pas reconnue
" . __file__ . ' ligne ' . __line__ . "\n" , true, false);
+ $var = trim($var, " .\n\r)");
+ $varReplace = "$" . $var;
+ if ( isset ($variables[$var]) )
+ {
+ $dbVar = $variables[$var];
+ $varText = $db->$dbVar;
+ //$text = str_replace($varReplace, $db->$dbVar, $text);
+ }elseif ( isset ($dico[$var]) )
+ {
+ $varText = $dico[$var];
+ //$text = str_replace($varReplace, $dico[$var], $text);
+ }else
+ {
+ log_error( "La variable => " . $var . "n'est pas reconnue
" . __file__ . ' ligne ' . __line__ . "\n" , true, false);
+ }
+ if ($html and (strpos($var, "url") !== false))
+ {
+ $varText = '' . $varText . "";
+ }
+ $text = str_replace($varReplace, $varText, $text); //remplace la variable dans le texte
}
- if ($html and (strpos($var, "url") !== false))
- {
- $varText = '' . $varText . "";
- }
- $text = str_replace($varReplace, $varText, $text); //remplace la variable dans le texte
}else {
break;
}
diff --git a/include/log.php b/include/log.php
index b28a4f8..d30e392 100644
--- a/include/log.php
+++ b/include/log.php
@@ -39,8 +39,8 @@ function log_write($log, $level=INFO)
}else
{
- echo $db->error();
- mail( $webmaster, "Erreur écriture logs => " . __file__ . " ligne " . __line__ , $log_mail);
+ //echo $db->error();
+ mail( $webmaster, "Erreur de connecxion à la base de données => " . __file__ . " ligne " . __line__ , $log_mail);
}
//$db->close();
if ( $level == ALERT )
@@ -77,63 +77,79 @@ function affich_log( $nl, $np = 1, $level=0)
$db = new db();
if( !empty( $db->connect ) )
{
- $level_s = array( "aucun" , "info" , "alerte" , "erreur" );
- $query = 'SELECT * FROM ' . $table_prefix . 'logs ORDER BY id_log DESC';
+ $level_s = array( "aucun", "info", "alerte", "erreur" );
+ if ($level < 0 or $level >3) $level = 0;
+ $query = 'SELECT * FROM ' . $table_prefix . 'logs';
if ( $level != 0 )
{
- $query .= " WHERE niveau='" . $db->protect($level) . "'";
+ $query .= " WHERE niveau=" . $level ;
}
+ $query .= ' ORDER BY id_log DESC';
$db->query($query);
$total_lignes = $db->result->num_rows;
+
+ /////////////:: Calcule le nombre de pages de logs
+ $n_pages = round( $total_lignes / $nl );
+
+ if ( $np == 0 )
+ {
+ $np = 1;
+ }elseif ( $np > $n_pages )
+ {
+ $np = $n_pages;
+ }
+ //////////////////////////////////////////////////////
+
+ ////////////////////////// Bouton de choix du niveau de log
+ echo "\n" . '\n";
+
+ /////////////////////////////////////////////////////////
+
+
+
+ // Bouton de choix du numéro de page
+ echo "\n" . '\n";
+ //////////////////////////////////////////////////////////////
+
+ //////////////// affiche page précédente et page suivante
+ if ( $np > 1 )
+ {
+ echo 'Page précédente';
+ }
+ if ( $np < $n_pages )
+ {
+ echo ' Page suivante';
+ }
+ //////////////////////////////////////////////////////////////////
+
+ /////////////////////// affiche les logs dans un tableau
if ($total_lignes != 0 )
{
-
- $n_pages = round( $total_lignes / $nl ) +1;
-
- if ( $np == 0 )
- {
- $np = 1;
- }elseif ( $np > $n_pages )
- {
- $np = $n_pages;
- }
- echo '';
- if ( $np > 1 )
- {
- echo 'Page précédente | ';
- }
- echo "\n" . '\n | ";
- if ( $np < $n_pages )
- {
- echo 'Page suivante | ';
- }
- echo "\n" . '\n |
";
$query = 'SELECT * FROM ' . $table_prefix . 'logs';
if ( $level != 0 )
{
@@ -146,12 +162,12 @@ function affich_log( $nl, $np = 1, $level=0)
while ( ($donnees =$db->result->fetch_array()) )
{
$niveau = $donnees["niveau"];
- echo "" . $donnees["date"] . " | " . $donnees["auteur"] . " | " . $donnees["log"] . " | " . $level_s[ $niveau ] . " |
\n";
+ echo "" . $donnees["date"] . " | " . $donnees["auteur"] . " | " . htmlentities($donnees["log"], ENT_QUOTES) . " | " . $level_s[ $niveau ] . " |
\n";
}
echo "
\n";
}else
{
- "aucune réponse";
+ print "aucune réponse";
}
}
}