// 1er paramètre (0 ou 1) : affiche un message d'erreur et die // si erreur à la connection. Mettre à 0 pour désactiver // 2nd paramètre : nom de la base de donnée // si vide, on utilise la variable définie dans DATA_BASE // 3ème paramètre (0 ou 1) : active ou désactive la sélection // d'une base (y compris celle définie dans DATA_BASE) // 4ème paramètre : active ou désactive le retour d'erreur qui coupe // le script quand la base n'est pas valide function connection_mysql($er_connec=1, $my_bd='', $bd=1, $er_bd=1) { global $__erreur_cnx_base__, $pmb_nb_documents, $pmb_opac_url, $pmb_bdd_version; global $charset, $SQL_MOTOR_TYPE; $my_connec = @mysql_connect(SQL_SERVER, USER_NAME, USER_PASS); if($my_connec==0 && $er_connec==1) { $__erreur_cnx_base__ = 'erreur '.mysql_errno().' : '.mysql_error().'
'; return 0 ; } if($bd) { $my_bd == '' ? $my_bd=DATA_BASE : $my_bd; if( mysql_select_db($my_bd)==0 && $er_bd==1 ) { $__erreur_cnx_base__ = 'erreur '.mysql_errno().' : '.mysql_error().'
'; return 0 ; } } $pmb_nb_documents=(@mysql_result(mysql_query("select count(*) from notices"),0,0))*1; $pmb_opac_url=(@mysql_result(mysql_query("select valeur_param from parametres where type_param='pmb' and sstype_param='opac_url'"),0,0)); $pmb_bdd_version=(@mysql_result(mysql_query("select valeur_param from parametres where type_param='pmb' and sstype_param='bdd_version'"),0,0)); if ($charset=='utf-8') mysql_query("set names utf8 ", $my_connec); else mysql_query("set names latin1 ", $my_connec); if ($SQL_MOTOR_TYPE) mysql_query("set storage_engine=$SQL_MOTOR_TYPE", $my_connec); return $my_connec; } // fonction de gestion des erreurs de connection. // my_error(); ou my_error(1); affichent le numéro et la // description de la dernière erreur MySQL. // $erreur = my_error(0) stocke dans $erreur la chaîne // contenant le numéro et la description de la dernière // erreur MySQL. function my_error($echo=1) { if(!mysql_errno()) return ""; $erreur = 'erreur '.mysql_errno().' : '.mysql_error().'
'; if($echo) echo $erreur; else { trigger_error($erreur, E_USER_ERROR); return $erreur; } }