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 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209
|
<?php
//Vérifie que l'admin est connection via sa session
require_once("../Login/VerifSessionAdmin.php");
//Connection à la base de données
require_once("../Connection/Connection.php");
//Recuperation du nom posté par RechercheAgentNom.php et mise en forme de la casse
$Nom=isset($_POST["Nom"])?$_POST["Nom"]:"";
$Nom=strtoupper($Nom);
//Recuperation du nom posté par RechercheAgentAlliance.php et mise en forme de la casse
$CodeAlliance=isset($_POST["CodeAlliance"])?$_POST["CodeAlliance"]:"";
$CodeAlliance=strtoupper($CodeAlliance);
//Recuperation du nom posté par RechercheEntite.php
$IdEntite=isset($_POST["IdEntite"])?$_POST["IdEntite"]:"";
if(!empty($Nom))
{
$requete="SELECT * FROM agents WHERE Nom LIKE '$Nom%'";
}
if(!empty($CodeAlliance))
{
$requete="SELECT * FROM agents WHERE CodeAlliance LIKE '$CodeAlliance%'";
}
if(!empty($IdEntite))
{
$requete="SELECT * FROM agents WHERE IdEntite='$IdEntite'";
}
// Récupération de toutes les données Agent et des divers Id de table
$query=$requete;
$result = mysql_query($query) or die('Erreur SQL !<br />'.$query.'<br />'.mysql_error());
if(mysql_num_rows($result)==0)
{
//Si le nom n'existe pas , on redirige vers la page de recherche appropriée
if(!empty($Nom))
{
header("location:RechercheAgentNom.php?error=-2");
exit;
}
if(!empty($CodeAlliance))
{
header("location:RechercheAgentAlliance.php?error=-2");
exit;
}
if(!empty($CodeAlliance))
{
header("location:RechercheAgentEntite.php?error=-2");
exit;
}
}
else
{
$data=mysql_fetch_array($result);
//Insertion du header
require_once("../Include/header.php");
//Insertion du menu
require_once("../Include/menu.php");
//$pg est la variable qui indique sur quelle page se trouve l'utilisateur
//on verifie si la variable $pg est definie, sinon on l'initialise a 1
if(!isset($_GET['pg'])){
$pg = 1;
}else{
$pg = $_GET['pg'];
}
//on verifie si la variable qui est censcée etre un numero de page est bien un chiffre,
//cela evite qu'un gogole vous pirate avec une injection mysql
if(!is_numeric($pg)){
$pg = 1;
}
//connexion mysql
$link = mysql_connect($dbhost,$dbuser,$dbpass)or die("Erreur de connexion: ".mysql_error($link));
//chois d'une bdd
mysql_select_db($dbname, $link)or die("Erreur de connexion: ".mysql_error($link));
//c'est le nb d'enregstrements à affiche par page:
$enreg_par_pg = 10;
//fonction qui affiche les liens vers les autres pages, ainsi que les liens page suivante et page precedente:
function pgs($enreg_par_pg, $pg, $link){
//c'est la requete qui doit permettre le nombre de résultats total qui va etre reparti sur plusieurs pages
$res = mysql_query($requete, $link) or die("Erreur MySQL: ".mysql_error($link));
$nb_enreg = mysql_num_rows($res);
//on calcule le nb de pages
$nb_pg_rounded = ceil( $nb_enreg / $enreg_par_pg );
//numero de page precedente
$pp = $pg - 1;
//numero de la page suivante
$ps = $pg + 1;
//si l'utilisateur se se trouve pas a la page n°1
if($pg != 1){
//on affiche un lien page précedente
//si votre script a besoin d'autre variable pour fonctionner n'oublier pas des les transmettre en ajoutant &var=$var...
echo "<a href='?pg=$pp'><<page précédente</a>";
}
//definition d'une variable pour la boucle
$i=1;
//la syntaxe do...while permet d'effectuer la boucle au moins une fois!
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
//idem: si votre script a besoin d'autre variable pour fonctionner n'oublier pas des les transmettre en ajoutant &var=$var...
echo " <a href='?pg=$i'>$i</a>\n";
}else{
//...sinon on affiche simplement le n° de la page actuelle
echo " $i ";
}
//incrémentation de la viariable de la boucle
$i++;
//on recommence tant que $i n'atteint pas le numero de la derniere page
}while($i <= $nb_pg_rounded);
//si l'utilisateur n'est pas a la derniere page...
if($pg != $nb_pg_rounded){
//...on affiche un lien page suivante
//idem: si votre script a besoin d'autre variable pour fonctionner n'oublier pas des les transmettre en ajoutant &var=$var...
echo " <a href='?pg=$ps'>page suivante>></a>";
}
}
//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
$req = mysql_query("SELECT IdAgent, IdEntite, IdSite FROM agents LIMIT $limit, $enreg_par_pg")or die("Erreur MySQL: ".mysql_error($link));
//Gestion des erreurs
if($error==-1) {echo "<div align='center' class='Menu'>Cet Agent n'existe pas !</div>";}
//Vérification des résultats
if(mysql_num_rows($req)<=0){
echo "<div align='center' class='Titre'>Administration</div>
<table width='720' border='0' align='center' cellpadding='10' cellspacing='1'>
<tr>
<th><div align='center'>Liste des agents</div><br></th>
</tr>
<tr>
<td height='100' class='TDDonnees'>
<div align='center' class='menu'>Il n'y a pas d'agent dans la base actuellement</div>
</td>
</tr>
</table>";
}
else
{
// Affiche les résultats
echo "<div align='center' class='Titre'>Administration<br /><span class='menu'>Liste des agents</span></div>
<table width='720' border='0' align='center' cellpadding='10' cellspacing='1'>
<tr valign='top'>
<th>Nom</th>
<th >Prénom</th>
<th >Entité</th>
<th >Site</th>
<th >Consultation</th>
</tr>";
// tant qu'il y a des lignes à afficher
while($temp=mysql_fetch_assoc($req)){
$query2 = "SELECT agents.IdAgent, agents.Nom, agents.Prenom, entites.Entite, sites.Site FROM agents, entites, sites WHERE agents.IdAgent='".$temp['IdAgent']."'AND entites.IdEntite='".$temp['IdEntite']."' AND sites.IdSite='".$temp['IdSite']."'";
$result2 = @mysql_query ($query2) or die (mysql_error());
while($temp2=mysql_fetch_assoc($result2)){
echo "<tr valign='top' class='TDDonnees'>
<td >".$temp2['Nom']."</td>
<td >".$temp2['Prenom']."</td>
<td >".$temp2['Entite']."</td>
<td >".$temp2['Site']."</td>
<td ><a href=\"AfficheAgent.php?IdAgent=".$temp2['IdAgent']."\">[Consulter]</a></td>
</tr>";
}
}
}
echo "</table>";
//on appele la fonction précédament créée pour afficher les liens vers les autres pages, vous pouvez l'appeler plusieurs fois s'il le faut
echo "<div align='center'><span class='menu'><p></span>";
pgs($enreg_par_pg, $pg, $link);
echo "<p>";
}
//insertion du footer
require_once("../Include/footer.php");
?> |