<?
/// Requete sql
$req = "SELECT rendezvous.code_rdv, nom_util, date, libelle_rdv, heure_deb, heure_fin, utilisateur.code_util
FROM avoir, rendezvous, utilisateur
WHERE rendezvous.code_rdv = avoir.code_rdv
AND avoir.code_util = utilisateur.code_util
AND date >= '$f_aujourdhui'
ORDER BY date";
/// En-tête du tableau
$ag3[1]="code_rdv";
$ag3[2]="nom_util";
$ag3[3]="date";
$ag3[4]="libelle_rdv";
$ag3[5]="heure_deb";
$ag3[6]="heure_fin";
/// En-tête du tableau
$tete[1]="CODE RENDEZ-VOUS";
$tete[2]="NOM EMPLOYÉ";
$tete[3]="DATE";
$tete[4]="LIBELLE";
$tete[5]="HEURE DEBUT";
$tete[6]="HEURE FIN";
/// Requete de l'affichage
$aff = new affich($req);
require("config/connect.php");
/// $ag3 est un tableau avec les noms des champs(en ordre) de la table concernée, le 2eme argument = l'indice(on commence à 1) de la clé dans le tableau, 3eme argument = au nombre de colonne à afficher
$aff->modif($ag3,"rendezvous","1","6");
/// argument1 = tableau(l'indice de tableau commence à 1) contenant l'entete (exemple nom, prenom ....) le troisieme argument est l'indice de la clé
$aff->supprime($ag3,"rendezvous","1");
$aff->supprime($ag3,"avoir","1");
/// argument1 = requete de l'affichage, argument2=nombre de colonne argument3 = tableau(l'indice de tableau commence à 1) contenant l'entete (exemple nom, prenom ....)
$aff->afficher($req,6,$tete);
?>
/// Requete sql
$req = "SELECT rendezvous.CODE_RDV, NOM_UTIL, DATE, LIBELLE_RDV, HEURE_DEB, HEURE_FIN, utilisateur.CODE_UTIL
FROM avoir, rendezvous, utilisateur
WHERE rendezvous.CODE_RDV = avoir.CODE_RDV
AND avoir.CODE_UTIL = utilisateur.CODE_UTIL
AND DATE >= '$f_aujourdhui'
ORDER BY DATE";
/// En-tête du tableau
$ag3[1]="rendezvous.CODE_RDV";
$ag3[2]="NOM_UTIL";
$ag3[3]="DATE";
$ag3[4]="LIBELLE_RDV";
$ag3[5]="HEURE_DEB";
$ag3[6]="HEURE_FIN";
/// En-tête du tableau
$tete[1]="CODE RENDEZ-VOUS";
$tete[2]="NOM EMPLOYÉ";
$tete[3]="DATE";
$tete[4]="LIBELLE";
$tete[5]="HEURE DEBUT";
$tete[6]="HEURE FIN";
/// Requete de l'affichage
$aff = new affich($req);
require("config/connect.php");
/// $ag3 est un tableau avec les noms des champs(en ordre) de la table concernée, le 2eme argument = l'indice(on commence à 1) de la clé dans le tableau, 3eme argument = au nombre de colonne à afficher
$aff->modif($ag3,"rendezvous","1","6");
/// argument1 = tableau(l'indice de tableau commence à 1) contenant l'entete (exemple nom, prenom ....) le troisieme argument est l'indice de la clé
$aff->supprime($ag3,"rendezvous","1");
$aff->supprime($ag3,"avoir","1");
/// argument1 = requete de l'affichage, argument2=nombre de colonne argument3 = tableau(l'indice de tableau commence à 1) contenant l'entete (exemple nom, prenom ....)
$aff->afficher($req,6,$tete);
[/php]<?
/** classe qui permet permet d'afficher, de modifier ou supprimer le contenu d'une base de donnée */
/** Déclaration de la classe */
class affich {
/** Fonction affiche qui permet d'afficher un tableau */
function affich($re) {
/** Appel au fichier de config pour se connecter à la base de données */
require("config/connect.php");
$resultat = mysql_query($re,$connexion);
/** Si on a un problème de connexion, on affiche le message d'erreur de Mysql sinon on regarde si on trouve des enregistrements */
if(!$resultat) {
echo mysql_error($connexion);
exit(0);
}
$_SESSION['ligne'] = mysql_num_rows($resultat);
}
function afficher($ag1,$ag2,$ag) {
require("config/connect.php");
$resultat = mysql_query($ag1,$connexion);
if(!$resultat)
echo mysql_error($connexion);
else
{
/** Si on a pas d'enregistrements dans la base, on affiche un message d'erreur */
if(mysql_num_rows($resultat)==0) {
echo 'Aucun enregistrement à afficher';
exit(0);
}
/** Calcul de la largeur de la cellule en fonction du nombre de champs à afficher */
$part=100/$ag2;
echo "<form name=\"form1\" action = \"".$_SERVER['PHP_SELF']."\" method=\"POST\">";
/** Mise en page et début du tableau */
echo "<br><table width=\"100%\" border=\"0\"cellspacing=\"0\" cellpadding=\"0\" height=\"30\" background=\"images/header.gif\">";
echo "<tr><td height=\"22\" background=\"images/title.gif\" class=\"menu\"> </td></tr>";
echo "<tr><td align=\"center\" valign=\"top\" bgcolor=\"78B1F3\"><table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"0\">";
echo "<tr><td align=\"center\" valign=\"top\" bgcolor=\"#FFFFFF\"><table width=\"100%\" border=\"0\" cellspacing=\"5\" cellpadding=\"0\">";
echo "<tr><td colspan=\"2\"> </td></tr>";
$k = 1;
for($i =1;$i<=$ag2;$i++)
/** Affichage des différents champs */
echo "<td width = \"".$part."%\" align=\"center\"><h3>".$ag[$i]."</h3></td>";
echo "<td><h3 class=\"stop\">SUPPRIMER</h3></td></tr> ";
while($row = mysql_fetch_array($resultat,MYSQL_ASSOC)){
echo "<tr>";
/** Boucle qui parcourt et affiche tous les enregistrements trouvés */
for($j =1;$j<=$ag2;$j++){
list($indice,$champ) = each($row);
/** Affichage des différents enregistrements */
echo "<td width = \"".$part."%\" align=\"center\"><input type=\"text\" name = \"".$k.$j."\" value=\"".$champ."\" style =\"font-family: Arial,Verdana,Helvetica;font-size: 14px; color:#330039 ;font-weight:bold;background-color: #DDEEFF;width:170px;\"></td>";
$val = $k.$j;
$_SESSION[$val] = $champs;
}
/** Affichage des cases à cocher */
echo " <td align=\"center\"><input type =\"checkbox\" name = \"bouton".$k."\" value =\"ouiNon\" ></td></tr>";
$k++;
}
/** Fin du tableau */
echo "<tr><td colspan=\"2\"> </td></tr><table width=\"100%\" border=\"0\" cellspacing=\"5\" cellpadding=\"0\">";
echo "<td align=\"center\"><input type = \"submit\" value= \"Valider\"></td></tr><tr><td> </td></tr></table>";
echo "</table></td></tr></table></td></tr></table></form>";
echo "<form name=\"retour\" action=\"./index.php?Page=menu_admin\" method=\"POST\"><div align=\"center\"><input type=\"submit\" value=\"Retour\"></div></form>";
}
}
/** Fonction modif qui permet de modifier les enregistrements d'une base de données */
function modif($colonne,$base,$cle,$nb) {
if ($_POST[$cle."1"] != "") {
require("config/connect.php");
for($i=1;$i<=$_SESSION['ligne'];$i++) {
for($j=1;$j<=$nb ;$j++){
$req = "update ".$base." set ".$colonne[$j]." = \"".$_POST[$i.$j]. "\" where ".$colonne[$cle]." = \"".$_POST[$i.$cle]."\"";
$resultat = mysql_query($req,$connexion);
if(!$resultat) echo mysql_error($connexion);
}
}
}
}
/** Fonction supprime qui permet de supprimer des enregistrements d'une base de données */
function supprime($colonne,$base,$cle) {
if ($_POST[$cle."1"] != ""){
require("config/connect.php");
for($i =1;$i<=$_SESSION['ligne'];$i++){
$bouton = "bouton".$i;
if($_POST[$bouton]== "ouiNon") {
$req = "DELETE FROM ".$base." WHERE ".$colonne[$cle]." = \"".$_POST[$i.$cle]."\"";
$resultat = mysql_query($req,$connexion);
if(!$resultat) echo mysql_error($connexion);
}
}
}
}
}
?>
$aff->modif($ag3,"rendezvous","1","6");
$ag3 est un tableau indexé: pour modifier par exemple la date, il faudrait mettre:
$aff->modif($ag3[3],"rendezvous","1","6");
/** Fonction modif qui permet de modifier les enregistrements d'une base de données */
function modif($colonne,$base,$cle,$nb) {
if ($_POST[$cle."1"] != "") {
require("config/connect.php");
for($i=1;$i<=$_SESSION['ligne'];$i++) {
for($j=1;$j<=$nb ;$j++){
$req = "update ".$base." set ".$colonne[$j]." = \"".$_POST[$i.$j]. "\" where ".$colonne[$cle]." = \"".$_POST[$i.$cle]."\"";
$resultat = mysql_query($req,$connexion);
if(!$resultat) echo mysql_error($connexion);
}
}
}
}