Bonsoir,
C'est ok, voici le
books_class.php :
<?
// Page créée le 18/05/2007 02:46:14 par myGenerator 2006
Class books
{
// variables correspondant aux champs de la table books
var $id;
var $titre;
var $infos;
var $images;
var $resumer;
// $message contient le resultat de l'exécution des operations
var $message;
function books()
{
$this->id = -1;
// Informations de connexion de l'utilisateur
$host = "localhost";
$user = "root";
$password = "";
// Base des données utilisée
$database_name = "cabinet_bassamat";
// Connexion mysql
$connexion = mysql_connect($host, $user, $password) or die (mysql_error());
// Sélection de la base des données
$db = mysql_select_db($database_name, $connexion) or die(mysql_error());
}
// Recherche par le champ identifiant d'un enregistrement
function getBooks($id)
{
// Requête
$sql = "SELECT * ";
$sql .= "FROM books ";
$sql .= "WHERE id = '$id';";
// Exécution
$rsql = mysql_query($sql);
// Résultats
if (mysql_num_rows($rsql) == 0)
{
// Cas d'échec
$this->id = -1;
}
else
{
// Cas de succès
$this->id = mysql_result($rsql, 0, "id");
$this->titre = mysql_result($rsql, 0, "titre");
$this->infos = mysql_result($rsql, 0, "infos");
$this->images = mysql_result($rsql, 0, "images");
$this->resumer = mysql_result($rsql, 0, "resumer");
}
}
// Affichage par critère spécifié de tous les enregistrements
// La forme du variable $whereCritere peut être la suivante :
// critere1 AND (critere2 OR critere3)
// La forme du variable $orderCritere peut être la suivante :
// critere1, critere2, critere3
function getAllBooks($whereCritere='', $orderCritere='')
{
// Requête
$sql = "SELECT * ";
$sql .= "FROM books ";
if($whereCritere)
{
$sql .= "Where $whereCritere ";
}
if($orderCritere)
{
$sql .= "Order by $orderCritere ";
}
/*if($critere)
{
$sql .= "Where $critere ";
}
$sql .= "Order by id";*/
// Exécution
$rsql = mysql_query($sql);
// Résultats
if (mysql_num_rows($rsql) == 0)
{
// Cas d'échec
$this->id = -1;
}
else
{
// Cas de succès
$ret = array();
while($line=mysql_fetch_object($rsql))
{
$ret[] = $line;
}
return $ret;
}
}
// Enregistrement d'un enregistrement
function setBooks()
{
// Requête
$sql = "INSERT INTO books (`titre`, `infos`, `images`, `resumer`, `id`) ";
$sql .= "VALUES (
'".$this->formatData($this->titre)."',
'".$this->formatData($this->infos)."',
'".$this->formatData($this->images)."',
'".$this->formatData($this->resumer)."',
'".$this->getNewId()."'); ";
// Exécution et résultat
if (mysql_query($sql))
{
$this->message = "Enregistrement effectué avec succès!";
}
else
{
$this->message = "Un problème est survenu lors de l'enregistrement!";
}
}
// Modification d'un enregistrement
function updateBooks($id)
{
$sql = "UPDATE books SET ";
$sql .= "`titre` = '".$this->formatData($this->titre)."', ";
$sql .= "`infos` = '".$this->formatData($this->infos)."', ";
$sql .= "`images` = '".$this->formatData($this->images)."', ";
$sql .= "`resumer` = '".$this->formatData($this->resumer)."', ";
$sql .= "`id` = '$id' ";
$sql .= "WHERE `id` = '$id';";
// Exécution et résultat
if(mysql_query($sql))
{
$this->message = "Modification effectué avec succès!";
}
else
{
$this->message = "Un problème est survenu lors de la modification!";
}
}
// Suppression d'un enregistrement
function deleteBooks($id)
{
// Requête
$sql = "DELETE FROM books WHERE id = '$id';";
// Exécution et résultat
if (mysql_query($sql))
{
$this->message = "Suppression effectué avec succès!";
}
else
{
$this->message = "Un problème est survenu lors de la suppression!";
}
}
// Création d'un nouveau id par incrémentation
function getNewId()
{
$sql = mysql_query(" select max(id) from books ");
$line = mysql_fetch_row($sql);
$newId = $line[0]+1;
return $newId;
}
// Formattage des données pour éviter les éventuels problèmes qui peuvent être causés par les caractères interprétables par PHP, par Mysql ou par HTML (accentués ou spéciaux)
function formatData($d)
{
return (htmlentities($d, ENT_QUOTES));
}
}
?>
Cordialement.