idlender = $id; $this->getData(); } else { // le lender n'existe pas $this->idlender = 0; $this->getData(); } } // --------------------------------------------------------------- // getData() : récupération infos du lender // --------------------------------------------------------------- function getData() { global $dbh; if($this->idlender=="") { // pas d'identifiant. on retourne un tableau vide $this->idlender = 0; $this->lender_libelle = ""; } else { $requete = "SELECT idlender, lender_libelle FROM lenders WHERE idlender='".$this->idlender."' LIMIT 1 " or die (mysql_error()); $result = mysql_query($requete, $dbh); if(mysql_num_rows($result)) { $temp = mysql_fetch_object($result); $this->idlender = $temp->idlender; $this->lender_libelle = $temp->lender_libelle; } else { // pas de lender avec cette clé $this->idlender = 0; $this->lender_libelle = ""; } } } /* une fonction pour générer des combo Box paramêtres : $selected : l'élément sélectioné le cas échéant retourne une chaine de caractères contenant l'objet complet */ static function gen_combo_box ( $selected ) { $requete="select idlender, lender_libelle from lenders order by lender_libelle "; $champ_code="idlender"; $champ_info="lender_libelle"; $nom="book_lender_id"; $on_change=""; $liste_vide_code="0"; $liste_vide_info="Aucun prêteur défini"; $option_premier_code=""; $option_premier_info=""; $gen_liste_str=""; $resultat_liste=mysql_query($requete); $gen_liste_str = "\n" ; return $gen_liste_str ; } /* fin gen_combo_box */ function import($data) { // cette méthode prend en entrée un tableau constitué des informations suivantes : // $data['lender_libelle'] global $dbh; // check sur le type de la variable passée en paramètre if(!sizeof($data) || !is_array($data)) { // si ce n'est pas un tableau ou un tableau vide, on retourne 0 return 0; } // check sur les éléments du tableau $long_maxi = mysql_field_len(mysql_query("SELECT lender_libelle FROM lenders limit 1"),0); $data['lender_libelle'] = rtrim(substr(preg_replace('/\[|\]/', '', rtrim(ltrim($data['lender_libelle']))),0,$long_maxi)); if($data['lender_libelle']=="") return 0; // préparation de la requête $key0 = addslashes($data['lender_libelle']); /* vérification que le lender existe */ $query = "SELECT idlender FROM lenders WHERE lender_libelle='${key0}' LIMIT 1 "; $result = @mysql_query($query, $dbh); if(!$result) die("can't SELECT lenders ".$query); $lenders = mysql_fetch_object($result); /* le lender existe, on retourne l'ID */ if($lenders->idlender) return $lenders->idlender; // id non-récupérée, il faut créer la forme. $query = "INSERT INTO lenders SET lender_libelle='".$key0."' "; $result = @mysql_query($query, $dbh); if(!$result) die("can't INSERT into lenders ".$query); return mysql_insert_id($dbh); } /* fin méthode import */ } # fin de définition de la classe serie } # fin de délaration