1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
|
<table class="table_decla">
<TR >
<TH>TIME</TH>
<TH>SEVERITY</TH>
<TH>MESSAGE</TH>
<TH>NBT</TH>
<TH>NBE</TH>
</TR >
<?php
if(!isset($_GET['pg'])){
$pg = 1;
}else{
$pg = $_GET['pg'];
}
//on verifie si la variable qui doit etre un numero de page est bien un chiffre,
//pour plus de sécurité
if(!is_numeric($pg)){
$pg = 1;
}
//connexion mysql
mysql_select_db($database, $dbconnect);
//c'est le nb d'enregistrements à afficher par page:
$enreg_par_pg = 25;
//fonction qui affiche les liens vers les autres pages, ainsi que les liens page suivante et page precedente:
function pgs($enreg_par_pg, $pg, $dbconnect)
{
//c'est la requete qui doit permettre le nombre de résultats total qui va etre reparti sur plusieurs pages
if(isset($_POST["bouton"])&& $_POST["bouton"]=="TRIER")
{
$sdate = $_POST['sdate']." 00:00:00";
$edate = $_POST['edate']." 00:00:00";
if(isset($_POST["sev"])&& is_numeric($_POST["sev"]))
{
$requete = sprintf("SELECT * FROM shalmlis WHERE SEV=".$_POST['sev']);
if(isset($_POST["nbt"])&& is_numeric($_POST["nbt"]))
$requete = sprintf("SELECT * FROM shalmlis WHERE SEV=".$_POST['sev']." AND NBT=".$_POST['nbt']);
if(isset($_POST["sdate"])&&isset($_POST["edate"])&& $_POST["sdate"]!="date start" && $_POST["edate"]!="date end")
$requete = sprintf("SELECT * FROM shalmlis WHERE SEV=".$_POST['sev']." AND NBT=".$_POST['nbt']." AND TIM >='$sdate' AND TIM <='$edate'");
}
else if(isset($_POST["nbt"])&& is_numeric($_POST["nbt"]))
{
$requete = sprintf("SELECT * FROM shalmlis WHERE NBT=".$_POST['nbt']);
if(isset($_POST["sdate"])&&isset($_POST["edate"])&& $_POST["sdate"]!="date start" && $_POST["edate"]!="date end")
$requete = sprintf("SELECT * FROM shalmlis WHERE SEV=".$_POST['sev']." AND NBT=".$_POST['nbt']." AND TIM >='$sdate' AND TIM <='$edate'");
}
else if(isset($_POST["sdate"])&&isset($_POST["edate"])&& $_POST["sdate"]!="date start" && $_POST["edate"]!="date end")
{
$requete = sprintf("SELECT * FROM shalmlis WHERE SEV=".$_POST['sev']." AND NBT=".$_POST['nbt']." AND TIM>='$sdate' AND TIM<='$edate'");
}
else {
$requete = sprintf("SELECT * FROM shalmlis ");
}
}else//affichage normal : pas de tri
{
$requete = sprintf("SELECT * FROM shalmlis");
}
$res = mysql_query($requete, $dbconnect) or die(mysql_error());
mysql_close($dbconnect);
$nb_enreg = mysql_num_rows($res);
//on calcule le nb de pages
$nb_pg_rounded = ceil( $nb_enreg / $enreg_par_pg );//arrondi au nb supérieur
//definition du minimum et du maximum
$min= $pg-(($pg-1)%10);
if($nb_pg_rounded<$min+9) {
$max= $nb_pg_rounded;
} else {
$max= $min+9;
}
// si on est pas au début, on est au moins en 11, on peut donc reculer de 10
if($min!=1) {
echo " <a href='?page=29&pg=".($pg-10)."'><<</a>";
}
$i= $min;
do{
//si $i n'est pas egal au numero de la page sur laquelle se trouve l'utilisateur...
if($i != $pg){
//...on affiche un lien vers cette page
echo " <a href='?page=29&pg=$i'>$i</a> ";
//echo " <a href='?page=29&pg=$i&tri=$ordre_tri'>$i</a>\n";
}else{
//...sinon on affiche simplement le n° de la page actuelle
echo " $i ";
}
$i++;
//on recommence tant que $i n'atteint pas le numero de la derniere page
}while($i <= $max);
// si le maximum affiché n'est pas la fin
if($max<$nb_pg_rounded) {
// si la page+10 existe on avance de 10
// sinon, on se positionne sur la fin
if($pg+9<$nb_pg_rounded) {
echo " <a href='?page=29&pg=".($pg+10)."'>>></a><br />";
} else {
echo " <a href='?page=29&pg=".($nb_pg_rounded)."'>>></a><br />";
}
}
}
//ici on calcule à partir de quel enregistrement il faut afficher $enreg_par_pg résultats
$limit = $enreg_par_pg*$pg-$enreg_par_pg;
//c'est la requete qui selectione $enreg_par_pg resultats
if(isset($_POST["bouton"])&& $_POST["bouton"]=="TRIER")
{
$sdate = $_POST['sdate']." 00:00:00";
$edate = $_POST['edate']." 00:00:00";
if(isset($_POST["sev"])&& is_numeric($_POST["sev"]))
{
$requete2 = sprintf("SELECT * FROM shalmlis WHERE SEV=".$_POST['sev']." ORDER BY TIM DESC LIMIT $limit, $enreg_par_pg ");
if(isset($_POST["nbt"])&& is_numeric($_POST["nbt"]))
$requete2 = sprintf("SELECT * FROM shalmlis WHERE SEV=".$_POST['sev']." AND NBT=".$_POST['nbt']." ORDER BY TIM DESC LIMIT $limit, $enreg_par_pg ");
if(isset($_POST["sdate"])&&isset($_POST["edate"])&& $_POST["sdate"]!="date start" && $_POST["edate"]!="date end")
$requete2 = sprintf("SELECT * FROM shalmlis WHERE SEV=".$_POST['sev']." AND NBT=".$_POST['nbt']." AND TIM >='$sdate' AND TIM <'$edate' ORDER BY TIM DESC LIMIT $limit, $enreg_par_pg ");
}
else if(isset($_POST["nbt"])&& is_numeric($_POST["nbt"]))
{
$requete2 = sprintf("SELECT * FROM shalmlis WHERE NBT=".$_POST['nbt']." ORDER BY TIM DESC LIMIT $limit, $enreg_par_pg ");
if(isset($_POST["sdate"])&&isset($_POST["edate"])&& $_POST["sdate"]!="date start" && $_POST["edate"]!="date end")
$requete2 = sprintf("SELECT * FROM shalmlis WHERE SEV=".$_POST['sev']." AND NBT=".$_POST['nbt']." AND TIM >='$sdate' AND TIM <='$edate' ORDER BY TIM DESC LIMIT $limit, $enreg_par_pg ");
}
else if(isset($_POST["sdate"])&&isset($_POST["edate"])&& $_POST["sdate"]!="date start" && $_POST["edate"]!="date end")
{
$requete2 = sprintf("SELECT * FROM shalmlis WHERE SEV=".$_POST['sev']." AND NBT=".$_POST['nbt']." AND TIM>='$sdate' AND TIM<='$edate' ORDER BY TIM DESC LIMIT $limit, $enreg_par_pg ");
}
else {?><script type="text/javascript">
alert("PB: Veuillez au moins remplir un champ ou remplir la date de depart ET la date de fin !");
</script>
<?php
$requete2 = sprintf("SELECT * FROM shalmlis ORDER BY TIM DESC LIMIT $limit, $enreg_par_pg ");
}
}else//affichage normal : pas de tri
{
$requete2 = sprintf("SELECT * FROM shalmlis ORDER BY TIM DESC LIMIT $limit, $enreg_par_pg ");
}
$reponse = mysql_query($requete2, $dbconnect) or die(mysql_error());
$i=0;
$j=1;
$ind=0;
while ($retour = mysql_fetch_array($reponse) )//recupere les lignes de la réponse sql dans un tableau
{
//alternance des couleurs des lignes
if($i%2==0){
$couleur="#E6E6E6";
$couleur2="#A9FF8F";}
else {
$couleur="#C0C0C0";
$couleur2="#A9FF8F";}
//on affiche chaque colonne dans la table avec une couleur differente pour chaque ligne
echo '<tr bgcolor="',$couleur,'" onclick="changecolor(this);" onmouseover="if (!clic) this.style.backgroundColor=\'',
$couleur2,'\'" onmouseout="if (!clic) this.style.backgroundColor=\'',$couleur,'\'">
<TD id="id'.$j.'"> '.$retour['TIM'].'</TD>';
$j++;
echo ' <TD id="id'.$j.'"> '.$retour['SEV'].' </TD>';
$j++;
echo ' <TD id="id'.$j.'" style="text-align: left"> '.$retour['MSG'].' </TD>';
$j++;
echo ' <TD id="id'.$j.'"> '.$retour['NBT'].' </TD>';
$j++;
echo ' <TD id="id'.$j.'"> '.$retour['NBE'].' </TD>';
$j++;
echo ' </TR>';
$i=$i+1;
}
// Libération des ressources prises par le fetch_array
mysql_free_result($reponse);
//on appele la fonction précédament créée pour afficher les liens vers les autres pages
pgs($enreg_par_pg, $pg, $dbconnect);
?>
</table> |
Partager