'.$_menu['text'].' '; $i++; } } //-------------------------------------------------------- //Verification de l'existence de caractere spéciaux dans la chaine function fct_verifie_carac_spec($chaine) { if( (preg_match_all("/([^a-zA-Z0-9_\@\.\-])/i", $chaine, $trouve)) || $chaine=='') return true ; else return false; } //------------------------------------------------------- //Verification d'un chaine numérique function fct_verifie_num($chaine) { $chaine=trim($chaine); if(!empty($chaine)) { if(ereg("^[0-9\.]+$", $chaine)) return true; else return false; } else return false; } //------------------------------------------------------- //Fonction qui verifie qu'une chaine est alphabetique, autorisant l'apostrohe function fct_verifie_alphabet($chaine) { $chaine=stripslashes($chaine); $chaine=ereg_replace("'","",$chaine);//Enleve les apostrohes $chaine=ereg_replace(" ","",$chaine);//Enleve les espaces // "/([^ïöüäëéèùôîûêâàa-zA-Z_\@\.\-])/i" if( (preg_match_all("/([^ïöüäëéèùôîûêâàa-zA-Z_\-])/i", $chaine, $trouve)) || $chaine=='') return true ; else return false; } //------------------------------------------------------- //Fonction qui verifie une chaine alphabétique acceptant le chiffre et uniquement l'apostrophe function fct_verifie_text2($chaine) { if(preg_match_all("#[^\w\s\'\@\.\ïöüäëéèùôîûêâàa]#", $chaine, $trouve) || $chaine=='') return true ; else return false; } //------------------------------------------------------- //Fonction qui mets les champs mal renseignés en rouge function fct_label_rouge($tab=array(),$champ,$label) { foreach ($tab as $t) { if($t==$champ) return "$label"; } return $label; } //-------------------------------------------------------------------- //Verification de l'existence d'une url function fct_verifie_url($adresse) { if(substr_count($adresse,"http://") > 0){ $port=80; $adresse=eregi_replace("http://", "", $adresse); } if(substr_count($adresse,"https://") > 0){ $port=443; $adresse=eregi_replace("https://", "", $adresse); } $url = fsockopen($adresse, $port); if(!$url) return false; else fclose($url); return true; } //------------------------------------------------------- //Verification de la validité d'une date function fct_verifie_date($j,$m,$a) { $j=(int)$j; $m=(int)$m; $a=(int)$a; //si le jour n'est pas entre 1 et 31 inclus if (($j > 31) || ($j == 0)){ return FALSE;} //si le mois n'est pas entre 1 et 12 inclus if (($m > 12) || ($m == 0)){ return FALSE;} //si pour le mois de février, avril, juin, septembre et novembre, le jour est 31 if (in_array($m, array(2, 4, 6, 9, 11)) && ($j == 31)){ return FALSE;} //Si pour le mois de Fevrier, le jour est 30 if (($m == 2) && ($j == 30)){ return FALSE;} /*echo "*/ //Si pour l'année choisi fevrier est bissextile... if (!date("L", mktime(0, 0, 0, 1, 1, $a)) && ($j == 29) && ($m==2)){ echo "annee bisex
"; return FALSE;} return TRUE; } function fct_verifie_date2($j,$m,$a){ $j=(int)$j; $m=(int)$m; $a=(int)$a; if(checkdate($m,$j,$a)){ $retour=TRUE; }else{ $retour=FALSE; } return $retour; } //------------------------------------------------------- //Verification de la validité d'une heure function fct_verifie_heure($h,$m) { $h=(int)$h; $m=(int)$m; if(($h > 23) || ($h < 0)) return false; if(($m > 59) || ($m < 0)) return false; return true; } //------------------------------------------------------- //Verification de l'égalité entre deux champs function fct_verifie_egalite($chaine1,$chaine2) { /*echo "";*/ //echo $chaine1." --- ".$chaine2."
"; if((trim($chaine1)=='') || (trim($chaine2)=='')) return false; if(strcmp($chaine1,$chaine2)==0) { //echo "egalite"; return true; } else { //echo "pas egalite"; return false; } } //------------------------------------------------------- //Fonction qui affiche un message correspondant à un id function fct_affiche_message($id_message) { echo ${'msg_err_'.$id_message}; } //------------------------------------------------------- //Fonction de verification d'un email function fct_verifie_email($email) { //Mise en miniscule de ts les caracteres $email = strtolower($email); if (strlen($email) < 6){ return (-1);}//$email : Email trop court if (strlen($email) > 255) {return (-2);}//$email : Email trop long if (!ereg("@", $email)){ return (-3);}//$email : Le email n'a pas d'arobase (@) //Recherche ts les caracteres spéciaux ds la chaine $email, et les mets ds le tableau numérique $trouve if (fct_verifie_carac_spec($email)) { return (-4);//"$email : caractère(s) interdit dans un email(".implode(", ", $trouve[0]).")."; } if (!preg_match("/^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}\$/i", $email)) { return (-5);//"$email : ce n'est pas un la forme d'un email."; } /* list($compte, $domaine)=split("@", $email, 2); if (!checkdnsrr($domaine, "MX")){ return (-6);//"$email : Ce domaine ($domaine) n'accepte pas les emails"; }*/ return 0; } //------------------------------------------------------- //Fonction qui verifie si un choix s'est fait ds une liste deroulante function fct_verifie_selection($selected) { if($selected=="") return false; else return true; } //------------------------------------------------------------------- //Function qui vérifie si un choix d'un bouton radio a été fait function fct_verifie_radio($coche) { if(empty($coche)) return false; else return true; } //------------------------------------------------------------------- //Formatage monétaire en fonction de la langue (pays) function fct_format_money($valeur , $pays,$etat=0,$decimale=2){ $valeur = doubleval($valeur); //explication des colonne de const: // 1: caractere des décimales // 2: caractere ente chaque millier // 3: caractere devant le montant // 4: Symbole de la monnaie $const = array(); $const['admin'] = array(', ', ' ', '', ''); $const['fr'] = array(', ', ' ', '', ' FCFA'); //$const['de'] = array(', ', '.', '', ' DM'); $const['de'] = array(', ', '.', '', ' €'); $const['au'] = array('.', ', ', '$ ', ''); $const['as'] = array(', ', '.', '', ' ÖS'); $const['be'] = array(', ', '.', 'BF ', ''); $const['br'] = array(', ', '.', '$ ', ''); $const['ca_fr'] = array(', ', ' ', '', ' $'); $const['ca_en'] = array(', ', ' ', '$ ', ''); $const['nz'] = array(', ', ' ', '$ ', ''); $const['pt'] = array(', ', ' ', '' , ' Esc.'); $const['dk'] = array(', ', '.', 'kr. ', ''); $const['es'] = array(', ', '.', '', 'Pts'); $const['hu'] = array(', ', ' ', '', ' Ft'); $const['fi'] = array(', ', ' ', '', ' mk'); $const['uk'] = array('.', ', ', 'L ', ''); $const['it'] = array(', ', '.', 'L. ', ''); $const['no'] = array(', ', ' ', '', ' kr'); $const['nl'] = array(', ', '.', 'Fl. ', ''); $const['se'] = array(', ', ' ', '', ' kr'); $const['ch'] = array('.', '\'', 'Fr ', ''); $const['us'] = array('.', ', ', '$ ', ''); $const['en'] = array(',', '.', '', ' euro'); if($etat==1) { $valeur =($valeur/655.5); } //Indique si une valeur de langue appartient au tableau : par défaut 'fr' if (!in_array($pays, array_keys($const))){ $pays = 'fr'; } list($dec, $mil, $monp, $symb) = $const[$pays]; return $monp.number_format($valeur,$decimale, $dec, $mil).$symb; } //------------------------------------------------------- //Fonction qui retourne le nombre de visiteurs connectés function fct_nb_connecte($time, $filename="visiteur.dat") { // $time est le temps en seconde à partir duquel on considère que // le visiteur n'est plus connecté // $filename est le nom du fichier créé pour stocker les informations //$ip = getenv("REMOTE_ADDR"); $ip=fct_obtenir_adresse(); $date=time(); $i=0; $ii=0; $bool=0; if(file_exists($filename)) { if($fichier=fopen($filename, "r")) { while(!feof($fichier)) { $ligne=fgets($fichier, 4096); $tab=explode("->", $ligne); if($tab[1]>0) { $tab_de_tab[$i][0]=$tab[0]; $tab_de_tab[$i][1]=$tab[1]; $i++; } } fclose($fichier); } } for($j=0;$j<$i;$j++) { if(($date-chop($tab_de_tab[$j][1]))>$time) { //on ne fait rien } else { $tab_de_tab_actualise[$ii][0]=$tab_de_tab[$j][0]; $tab_de_tab_actualise[$ii][1]=chop($tab_de_tab[$j][1]); $ii++; } } for($j=0;$j<$ii;$j++) { if($tab_de_tab_actualise[$j][0]==$ip) { $bool=1; } } if($bool==0) { $tab_de_tab_actualise[$ii][0]=$ip; $tab_de_tab_actualise[$ii][1]=$date; $ii++; } if($fichier=fopen($filename, "w")) { for($j=0;$j<$ii;$j++) { fputs($fichier, chop($tab_de_tab_actualise[$j][0])); fputs($fichier, "->"); fputs($fichier, chop($tab_de_tab_actualise[$j][1])); fputs($fichier, "\n"); } fclose($fichier); } return $ii+171; } //------------------------------------------------------- //Fonction qui enregistre l'adresse ip pour bannir l'acces à nos sites function fct_obtenir_adresse($type=0) { if (getenv('HTTP_X_FORWARDED_FOR')) { $ip = getenv('HTTP_X_FORWARD_FOR'); if ($type == 0) return $ip; else return gethostbyaddr($ip); } else { $ip = getenv('REMOTE_ADDR'); if ($type == 0) return $ip; else return gethostbyaddr($ip); } } //------------------------------------------------------- //Fonction pour obtenir l'adresse MAC à partir de l'adresse ip au format "93.125.24.23" function fct_get_Mac_Address($ip) { $buffer = ""; system("ping " . $ip); //system("arp -a > arp.dat"); $fileHandle = fopen ("arp.dat", "r"); while (!feof($fileHandle)) { $buffer = $buffer . fgets($fileHandle, 4096); } fclose ($fileHandle); $ip_mac = strstr($buffer, $ip); if($ip_mac){ $mac = substr($ip_mac, 22, 17); return strtolower(ltrim($mac)); } return false; } //------------------------------------------------------- //Fonction qui fait une liste déroulante de valeurs numériques de $min à $max par pas de $pas function fct_list_deroul_num($min,$max,$pas,$select='') { $ret=''; for($i=$min;$i<=$max;$i+=$pas) { $ret.="" ."" ."" ."" ."" ."" ."" ."" ."" ."" .""; return $ret; } //--------------------------------------------------------- //Fonction qui fait une liste déroulante des civilités ou des mois stockées dans un tableau function fct_list_deroul_tab($tab,$id=0,$select='') { $ret=''; for($i=$id; $i'; //$ret.=''; } return $ret; } //--------------------------------------------------------- //Fonction qui remplace la premier occurence d'une sous chaine dans une chaine function fct_str_replace($s_chaine , $remplace , $chaine) { $pos = strpos($chaine, $s_chaine); if ($pos === false) { return $chaine; } return substr_replace($chaine, $remplace , $pos, strlen($s_chaine)); } //--------------------------------------------------------- //Fonction qui modifie le titre de la fenetre en fonction de la page inclue dans l'index function fct_titre($page=0) { global $CPE,$TITRE; return $CPE." - ".$TITRE[$page]; } //----------------------------------------------------------- //Fonction qui retourne le jour le mois et l'année en cours function fct_date_du_jour($type=0) { global $MOIS, $JOUR,$LANG; if($type==0) { switch ($LANG) { case 'fr'://return Lundi 01 Janvier 2005 return $JOUR[date('w')-1]." ".date('j')." ".$MOIS[date('n')]." ".date('Y'); case 'en': switch(date('j')) { case 1: $jour="1st"; break; case 2: $jour="2nd"; break; case 3: $jour="3rd"; break; default: $jour=date('j')."th"; break; } return $JOUR[date('w')-1].", ".$MOIS[date('n')-1]." ".$jour." ".date('Y'); case 'de': return $JOUR[date('w')-1]." ".date('j').". ".$MOIS[date('n')-1]." ".date('Y'); } } else { return date("w/d/n/Y H:i:s"); } } //--------------------------------------------------------------- /** * Function qui retourne les parametres d'une date ds un tableau * @param :$date * return Tableau */ function fct_date_tab($date) { $_date=explode(" ",$date); if(count($_date[0])==4) list($tab_date['nj'],$tab_date['j'],$tab_date['m'],$tab_date['a'])=explode('/',$_date[0]); else list($tab_date['j'],$tab_date['m'],$tab_date['a'])=explode('/',$_date[0]); list($tab_date['h'],$tab_date['mn'],$tab_date['s'])=explode(':',$_date[1]); return $tab_date; } //--------------------------------------------------------------- /** * Function qui retourne un parametre de date * @param $type:char-> de parametre voulu: jour de semeine, N° du mois... * @param $date:string->la date à traiter * return la valeur du type */ function fct_param_date($type,$date) { $tab_date=fct_date_tab($date); $ret=date($type,mktime($tab_date['h'],$tab_date['mn'],$tab_date['s'],$tab_date['m'],$tab_date['j'],$tab_date['a'])); return $ret; } //-------------------------------------------------------------- //Function qui formatte l'affichege d'une date passée en parametre function fct_format_date($date,$lang) { global $MOIS, $JOUR; list($_dat,$heure)=explode(" ",$date); list($nj,$j,$m,$a)=explode("/",$_dat); $j=(int)$j; $m=(int)$m; list($h,$mn,$s)=explode(":",$heure); //mktime ( int hour, int minute, int second, int month, int day, int year [, int is_dst]) if($nj==0) $nj=6; else $nj-=1; switch ($lang) { case 'fr': $longdate= $JOUR[$nj]." ".$j." ".$MOIS[$m]." ".$a; break; case 'en': switch($j) { case 1: $j="1st"; break; case 2: $j="2nd"; break; case 3: $j="3rd"; break; default: $j.="th"; break; } $longdate=$JOUR[$nj].", ".$MOIS[$m]." ".$j." ".$a; break; case 'de': $longdate=$JOUR[$nj]." ".$j.". ".$MOIS[$m]." ".$a; break; } return $longdate." ".$h."h ".$mn."mn ".$s."s"; } //--------------------------------------------------------------- //Fonction qui verifie et inclue une page, sinon ramène un message d'erreur function fct_verif_affich_page($page,$aide='') { global $MSG_ERR_PAGE,$MSG_ERR_PAGE2; if($aide!='') $msg=$MSG_ERR_PAGE2; else $msg=$MSG_ERR_PAGE; if(file_exists($page)) require_once($page); else echo '
'.$msg.'
'; } //---------------------------------------------------------------------- //Foction qui lit le contenu d'un fichier et le retourne function fct_lire_fic($nom_fichier) { global $MSG_ERR_FICH; $fp=fopen($nom_fichier,"r"); if($fp) { while (!feof($fp)) $buffer .= fgets($fp, 4096)."\n"; return $buffer; } else return $MSG_ERR_FICH; } //---------------------------------------------------------------------- //Fonction qui convertit en numerique une adresse ip function fct_IPAdr2IPNum($ip) { $ip = preg_split( "/[.]+/", $ip); $num = (double) ($ip[0]*16777216)+($ip[1]*65536)+($ip[2]*256)+($ip[3]); return $num; } //---------------------------------------------------------------------- //Fonction qui convertit en adresse ip un numerique function fct_IPNum2IPAdr($num) { $a = ($num/16777216)%256; $b = ($num/65536)%256; $c = ($num/256)%256; $d = ($num)%256; $ip = $a.".".$b.".".$c.".".$d; return $ip; } //---------------------------------------------------------------------- //Fonction qui retourne le code et le nom du pays du visiteur function fct_pays_visit($id_pays='') { global $param_gene_db,$DEFAULT_USER,$DEFAULT_PASS,$DEFAULT_HOST; /* extraction adresse IP du visiteur */ $ip = fct_obtenir_adresse(); /* transformation IP */ $ip2 = fct_IPAdr2IPNum($ip); if($id_pays=='') $req="SELECT `COUNTRY_CODE`,`COUNTRY_NAME` FROM `ip-to-country` WHERE $ip2 BETWEEN `IP_FROM` AND `IP_TO`"; else $req="SELECT `COUNTRY_NAME` FROM `ip-to-country` WHERE COUNTRY_CODE='$id_pays' group by `COUNTRY_NAME`"; $id_connexion=fct_sql_connect($param_gene_db,$DEFAULT_USER,$DEFAULT_PASS,$DEFAULT_HOST); $res=fct_sql_exec($id_connexion, $req); fct_sql_close($id_connexion); if(fct_sql_num_rows($res)>0) { $row=fct_sql_fetch_row($res); } return $row; } //----------------------------------------------- //Function qui retourne le code et le nom d'un domaine d'activité function fct_fct_visit($id_fct) { global $_SESSION,$SELECT_ERR,$DEFAULT_USER,$DEFAULT_PASS,$DEFAULT_HOST,$param; $id_connexion=fct_sql_connect($param['cp']['db'],$DEFAULT_USER,$DEFAULT_PASS,$DEFAULT_HOST); $requete="SELECT `libelle_domaine_".$_SESSION['lang']."` FROM t_domaine_clt WHERE id_domaine_clt='$id_fct'"; $res=fct_sql_exec($id_connexion, $requete); fct_sql_close($id_connexion); if($res){ $row=fct_sql_fetch_row($res); return $row; } else return $SELECT_ERR; } //--------------------------------------------- //Function qui retourne le code et la question secrete function fct_fct_quest($id_quest) { global $_SESSION,$SELECT_ERR,$DEFAULT_USER,$DEFAULT_PASS,$DEFAULT_HOST,$param; $id_connexion=fct_sql_connect($param['param']['db'],$DEFAULT_USER,$DEFAULT_PASS,$DEFAULT_HOST); $requete="SELECT `libelle_quest_".$_SESSION['lang']."` FROM questions WHERE id_quest='$id_quest'"; //echo "fct=".$requete; $res=fct_sql_exec($id_connexion, $requete); fct_sql_close($id_connexion); if($res){ $row=fct_sql_fetch_row($res); return $row; } else return $SELECT_ERR; } //--------------------------------------------- //Function qui indique l'etat d'un solde function fct_indicateur($id_cpte,$solde,$type=0) { global $ind_solde,$LANG,$cp_solde_label; if($solde > $ind_solde[$id_cpte]['max']) { $bord="#006633"; $style="solde"; } elseif(($solde > $ind_solde[$id_cpte]['min']) && ($solde < $ind_solde[$id_cpte]['max'])) { $bord="#FF6600"; $style="solde_atten"; } else { $bord="#CC0000"; $style="solde_danger"; } if($type==0) $tableau='' .' ' .' ' .' ' .'
' .' ' .' ' .' ' .' ' .' ' .'
'.$cp_solde_label.' :
'.fct_format_money( $solde, 'fr').'
' .'
'; else $tableau='' .' ' .' ' .' ' .'
' .' ' .' ' .' ' .' ' .'
'.fct_format_money( $solde, $LANG).'
' .'
'; return $tableau; } //--------------------------------------------- //Function qui retourne le nombre de jours entre une date et le 01 Janvier 1970 function fct_mktime($date) { $_date=explode(" ",$date); $jma_date=explode("/",$_date[0]); $hms_date=explode(":",$_date[1]); return mktime($hms_date[0],$hms_date[1],$hms_date[2],$jma_date[2],$jma_date[1],$jma_date[3]); } //------------------------------------------------- //Fonction qui affiche le message lors de la function fct_message($lang,$num_cpte,$civilite,$nom,$prenom,$date_connexion) { global $bienvenue_txt,$MSG_INFO_FORCE,$civilite_txt; $date=fct_format_date($date_connexion,$lang); $message=$bienvenue_txt.", ".$civilite_txt[$civilite]." ".ucfirst($prenom)." ".ucfirst($nom)."!
" .$MSG_INFO_FORCE[1]." ".$date.".
" .$MSG_INFO_FORCE[2]."
".$MSG_INFO_FORCE[3]."
"; echo $message; } //----------------------------------------------------------- //Function qui formatte une chaine de caracetere //Decoupe sur un longueure fixe et concatene avec un caractere de séparation function fct_format_chaine($chaine,$separateur,$longueur) { $nbr=strlen($chaine)/$longueur; for($i=0;$i<$nbr;$i++) { $ch[$i]=substr($chaine,$i*$longueur,$longueur); $new_chaine.=$ch[$i]; if($i!=$nbr-1) $new_chaine.=$separateur; } return $new_chaine; } //----------------------------------------------------------- function uploadimg1($photo_prod){ if($photo_prod!=''){ //insertion du code d'upload de fichier ////////////////////////////////////////////////////////////////////////////////////// $repertoireDestination = "../_images/produit/"; $text1= $_FILES["photo_prod"]["name"]; ///suppression du fichier si existant if(file_exists("../_images/produit/$text1")){ $photo=$text1; } //recuperation du nom de fichier posté (valeur a inserer dans la table comme nom de la photo) $photo = $text1; // Pour raison de sécurité nous ajouterons aux fichiers // portant une extension .php .php3, l'extension .txt if (eregi(".php",$text1)) { $text .= ".txt"; } if (is_uploaded_file($_FILES["photo_prod"]["tmp_name"])) { if (move_uploaded_file($_FILES["photo_prod"]["tmp_name"], $repertoireDestination.$text1)) { /// echo "Le fichier temporaire ".$_FILES["fichiers"]["tmp_name"]. /// " a été déplacé vers ".$repertoireDestination.$nomDestination; } } } return $photo; } //echo "bon fichier
"; //----------------------------------------------------------------------------------------------- function fct_envoi_mail($email_src='',$email_dest='',$sujet='',$corps='',$type='') { /* destinataire $recipient .= "Armel ".", " ; //remarquez les virgules $recipient .= "Armel KOTTIA ".", "; $recipient .= "kabili369@hotmail.com";*/ /* sujet $subject = "Test de mail";*/ /* message $message .= "Le mail suivant n'inclut rien de bon\n"; $message .= "Sauf que si tu le lis c'est que le mail en php cours\n"; $message .= "Cordialement";*/ /* Vous pouvez ajouter une signature $message .= "--\r\n";*/ //Délimiteur de signature //$message .= "L'eau ne saute pas canniveau"; /* D'autres en-têtes : errors, From cc's, bcc's, etc */ $headers .= "From: ".$email_src."\n"; $headers .= "X-Sender: <".$email_src.">\n"; $headers .= "X-Mailer: PHP\n"; // maileur $headers .= "X-Priority: 1\n"; // Message urgent! $headers .= "Return-Path: <".$email_src.">\n"; // Re-chemin de retour pour les erreurs $headers .= "Content-Type: text/html; charset=iso-8859-1\n"; // Type MIME $headers .= "Cc:\n"; // Champs CC $headers .= "Bcc: yvank@walla.com"; // Champs BCCs /* et hop, à la poste */ //$test=mail($recipient, $subject, $message, $headers); $test=mail($email_dest,$sujet,$corps,$headers); return $test; } //-------------------------------------------------------------------------------------------------------------------------------- // function de miniaturisation CIMARKET function resize($url_src,$url_dest,$taille_mini,$mini_gd20quality,$mini_gdversion,$extension) { $size = getimagesize($url_src); if ($size[0] > $size[1]) {$rapport = ($taille_mini / $size[0]);} //$taille_mini = taille maxi d'une mini else {$rapport = ($taille_mini / $size[1]);} $dest_width = ($size[0] * $rapport); $dest_eight = ($size[1] * $rapport); if($extension=='gif'|| $extension=='GIF')$src_img = @imagecreatefromgif($url_src); elseif($extension=='png'|| $extension=='PNG')$src_img = imagecreatefrompng($url_src); elseif($extension=='jpg'|| $extension=='JPG') $src_img = @imagecreatefromjpeg($url_src); else {$mini_gdversion=15; echo 'image non valide';} //versions de GD et qualité de la mini if ($mini_gdversion==2)// GD 2.0 ou plus { $dst_img = imagecreatetruecolor($dest_width,$dest_eight); if ($mini_gd20quality=="imagecopyresampled") // HAUTE QUALITE {@imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_eight, $size[0], $size[1]);} else //BASSE QUALITE {imagecopyresized($dst_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_eight, $size[0], $size[1]);} } else // GD < 2.0 { $dst_img = imagecreate($dest_width,$dest_eight); imagecopyresized($dst_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_eight, $size[0], $size[1]); } //touch si safe_mode=on pour essayer de creer les miniatures if (ini_get("safe_mode")) { touch($url_dest); } if($extension=='gif'||$extension=='Gif')$rescreation=@imagegif($dst_img, $url_dest, 90); elseif($extension=='png'||$extension=='PNG')$rescreation=@imagepng($dst_img, $url_dest, 90); else $rescreation=@imagejpeg($dst_img, $url_dest, 90);//entier : qualité de la miniature [0,100] (haute qualité = faible compression) if ($rescreation!=1) $rescreation=0; @imagedestroy($src_img); @imagedestroy($dst_img); return $rescreation; } //-------------------------------------------------------------------------------------------------------------------------------- // function de covertion de jour de la semaine function jour_francais($jour) { $semaine['Monday']="Lundi"; $semaine['Tuesday']="Mardi"; $semaine['Wednesday']="Mercredi"; $semaine['Thursday']="Jeudi"; $semaine['Friday']="Vendredi"; $semaine['Saturday']="Samedi"; $semaine['Sunday']="Dimanche"; $jour=$semaine[$jour]; return $jour; } function mois_francais($ms) { $month['01']="Janvier"; $month['02']="Février"; $month['03']="Mars"; $month['04']="Avril"; $month['05']="Mai"; $month['06']="Juin"; $month['07']="Juillet"; $month['08']="Août"; $month['09']="Septembre"; $month['10']="Octobre"; $month['11']="Novembre"; $month['12']="Décembre"; $mois=$month[$ms]; return $mois; } //fonction de formatage d'un id function fct_formatage($val) { $taille=strlen($val); switch ($taille) { case 1: $id_format="000000".$val; break; case 2: $id_format="00000".$val; break; case 3: $id_format="0000".$val; break; case 4: $id_format="000".$val; break; case 5: $id_format="00".$val; break; case 6: $id_format="0".$val; break; default : $id_format=$val; break; } return $id_format; } function date_ang_fr($date) { list($annee,$mois,$jour)=explode("-",$date); $date_fr=$jour."/".$mois."/".$annee; return $date_fr; } function date_fr_ang($date) { list($jour,$mois,$annee)=explode("/",$date); $date_ang=$annee."-".$mois."-".$jour; return $date_ang; } function upload_image($nom_fic,$tmp_nom_fic,$repertoire_destination)/*$nom,*/ { //declaration du tableau de format $format=array('jpg','JPG','png','PNG','gif','GIF','jpeg','JPEG'); // variable utilisée pour la recupération du nom de l'image $fichier=basename($nom_fic); // variable utilisée pour la taille de l'image //$taille=getimagesize($tmp_nom_fic); // pour recupérer l'extension du fichier list($deb,$fin)=explode('.',$fichier); //test pour voir si l'image est un des formats compatibles if(in_array("$fin",$format)){ if (is_uploaded_file($tmp_nom_fic)) { //$fichier=$nom.$fin; $fichier=time().'.'.$fin; if(move_uploaded_file($tmp_nom_fic,$repertoire_destination.$fichier)) { chmod($repertoire_destination.$fichier,0777); //message de reussite pour lupload de l'image echo "ca marche !!!"; }else $fichier=''; }else $fichier=''; }else $fichier=''; return $fichier; } function upload_file($nom_fic,$tmp_nom_fic,$repertoire_destination)/*$nom,*/ { //declaration du tableau de format $format=array('mp3','MP3','wma','WMA','ogg','OGG'); // variable utilisée pour la recupération du nom de l'image $fichier=basename($nom_fic); // variable utilisée pour la taille de l'image //$taille=getimagesize($tmp_nom_fic); // pour recupérer l'extension du fichier list($deb,$fin)=explode('.',$fichier); //test pour voir si l'image est un des formats compatibles if(in_array("$fin",$format)){ if (is_uploaded_file($tmp_nom_fic)) { //$fichier=$nom.$fin; $fichier=time().'.'.$fin; if(move_uploaded_file($tmp_nom_fic,$repertoire_destination.$fichier)) { //message de reussite pour lupload de l'image //echo "ca marche !!!"; }else $fichier=''; }else $fichier=''; }else $fichier=''; return $fichier; } function upload_video($nom_fic,$tmp_nom_fic,$repertoire_destination) { //declaration du tableau de format $format=array('avi','AVI','mpeg','MPEG','wmv','MMV','mp4','MP4','flv','FLV'); // variable utilisée pour la recupération du nom de l'image $fichier=basename($nom_fic); // variable utilisée pour la taille de l'image //$taille=getimagesize($tmp_nom_fic); // pour recupérer l'extension du fichier list($deb,$fin)=explode('.',$fichier); //test pour voir si l'image est un des formats compatibles if(in_array("$fin",$format)){ if (is_uploaded_file($tmp_nom_fic)) { //$fichier=$nom.'.'.$fin; $fichier=time().'.'.$fin; if(move_uploaded_file($tmp_nom_fic,$repertoire_destination.$fichier)) { //message de reussite pour lupload de l'image $fichier=$fichier; }else $fichier=''; }else $fichier=''; }else $fichier=''; return $fichier; } function formatage_date_fancais_slashes($date_entree) { list($annee,$mois,$jour)=explode("/",$date_entree); $date_francais=$jour.'/'.$mois.'/'.$annee; return $date_francais; } function formatage_date_anglais_slashes($date_entree) { list($jour,$mois,$annee)=explode("/",$date_entree); $date_anglais=$annee.'/'.$mois.'/'.$jour; return $date_anglais; } function formatage_date_anglais_trait($date_entree) { list($jour,$mois,$annee)=explode("-",$date_entree); $date_anglais=$annee.'/'.$mois.'/'.$jour; return $date_anglais; } function formatage_date_francais_trait($date_entree) { list($annee,$mois,$jour)=explode("-",$date_entree); $date_francais=$jour.'/'.$mois.'/'.$annee; return $date_francais; } //-------------------------------------------------------------------------------------------------------------------------------- function qualitex($value){ if($value>= 213200 && $value < 307200)$value=307200; elseif($value >= 307200 && $value < 480000 )$value=480000; elseif($value >= 480000 && $value < 666000 )$value=666000; elseif($value >= 666000 && $value < 786432 )$value=786432; elseif($value >= 786432 && $value < 1228800 )$value=1228800; elseif($value >= 1228800 && $value < 1920000 )$value=1920000; elseif($value >= 1920000 )$value=1920000; else $value=213200; return $value; } //---------------------------------------------------------------------------------------------------------------------------------------- //fonction qui permet de renommer un fichier image ayant un nom comportant des espaces function renommer($url,$ancien_nom,$ext1){ //recuperation d'une partie du nom list($nom,$rest_dunom)=explode(" ",$ancien_nom); //test au cas ou on a une image jpeg pour uniformiser if($ext1=='jpeg'|| $ext1=='jpg')$ext1='jpg'; $nouv_nom=$nom.'.'.$ext1; //on renomme if($rest_dunom!='') { @rename($url.$ancien_nom,$url.$nouv_nom); return $nouv_nom; } else return 2; } //----------------------------------------------------------------------------------------------------------------------------------------- //fonction qui permet de remplacer les caractères accentués par leur equivalent non accentuées function enlev_accent($phrase) { $phrase=strtr($phrase,"ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ'&{}[]~-=+()^°","aaaaaaaaaaaaooooooooooooeeeeeeeecciiiiiiiiuuuuuuuuynnzzzzzzzzzzzzzz"); return $phrase; } //################################################################################"// function comp_deux_dates($dated,$datef){ list($jr,$ms,$an)=explode("/",$dated); list($jr1,$ms1,$an1)=explode("/",$datef); $mkd=mktime(0,0,0,$ms,$jr,$an); $mkf=mktime(0,0,0,$ms1,$jr1,$an1); $mk=$mkf-$mkd; return $mk; } function care_date($dated){ list($jr,$ms,$an)=explode("-",$dated); $mk=$an.'/'.$ms.'/'.$jr; return $mk; } //////////////////////////////////////////////// function navigate($nbre,$url,$tuple){ $nombre_total_de_resultat=$nbre; /** * on recupere le nombre d'enregistrement et ensuite on découpe ce nombre en X pages de 6 résultats Ici la fonction ceil() sert à obtenir le nombre exacte de page ! **/ $nombre_de_page=ceil($nombre_total_de_resultat/$tuple); $lim=(isset($_GET['lim'])) ? $_GET['lim'] : 1; if(isset($_GET['page'])){ $pageActuelle=intval($_GET['page']); if($pageActuelle>$nombre_de_page) // Si la valeur de $pageActuelle (le numéro de la page) est plus grande que $nombreDePages... { $pageActuelle=$nombre_de_page; } } else // Sinon { $pageActuelle=1; // La page actuelle est la n°1 } $pg=($pageActuelle-1)*$tuple; $plus=($lim>=($nombre_de_page)) ? "" : " Suivant >"; $moins=($pg <1) ? "" : ""; for($i=1; $i<=$nombre_de_page; $i++) //On fait notre boucle { //On va faire notre condition if($i==$pageActuelle) //Si il s'agit de la page actuelle... { $menu.= ' [ '.$i.' ] '; } else //Sinon... { $menu.= ' '.$i.' '; } } $mess[1]=$plus; $mess[2]=$menu; $mess[3]=$moins; $mess[4]=$pg; $mess[5]=$lim; $mess[6]=$nombre_de_page; $mess[7]=$nombre_total_de_resultat; $mess[8]=$tuple; return $mess; } ?> site officiel du bureau Fatom-Bénin

HISTOIRE

 

DU DAHOMEY AU BENIN

Selon la légende, les dynasties des royaumes du sud de la République du Bénin sont originaires de Tado, ville de l'actuel Togo et sont nées d'un couple mythique : la princesse Aligbonon de Tado et une panthère.

Au XVIIe siècle, deux de leurs descendants, Ganyé Hessou et Dako, jettent les bases d'un nouveau royaume : le Danhomè. Houégbadja (1645-1685) en établit les bases légales et les grands principes de fonctionnement : règles de succession, missions politiques des souverains, etc. A cette époque, le royaume se limite au plateau d'Abomey.

Au XVIIIe siècle, le roi Agadja (1708-1740) étend les frontières du Danhomè jusqu'à la côte atlantique en conquérant les royaumes d'Allada et de Savi. Désormais, le Danhomè participe pleinement et directement au commerce négrier par le port de Ouidah, capitale de Savi. Il s'enrichit considérablement.

Le royaume atteint son apogée au XIXe siècle sous le roi Guézo (1818-1858). Contraint par les mouvements anti-esclavagistes, Guézo développe l'agriculture et convertit l'économie du Danhomè qui exporte désormais moins ouvertement des esclaves et davantage de produits agricoles (maïs, noix de palme...).

A la fin du XIXe siècle, malgré la farouche résistance du roi Gbêhanzin (1889-1894) à la pénétration européenne, le royaume perd son indépendance et se dissout dans la colonie française du Dahomey.

Les traces d'habitats humains sont très anciennes dans cette région de l,Afrique, probablement dès le paléolithique. Les premiers royaumes furent mis en place à partir du XIVe siècle. Le plus connu, le royaume du Dan-Homé (Dahomey), semble avoir été créé dans le sud du pays par les Yoroubas. Il serait à l'origine des principautés de Savè et d'Allada qui prirent contact avec les premiers navigateurs européens.

Au siècle suivant, une scission parmi les héritiers du royaume d'Allada aboutit à la formation du royaume d'Adjatché, au sud-est et, plus au nord, sous la direction d'Houegbadja (1645-1689), du royaume du Dahomey, à partir d'Abomey, qui devint la capitale du royaume.

Le Dahomey se transforma en puissance dominante de la région grâce à la traite des Noirs. Le royaume du Dahomey joua un rôle d'intermédiaire avec les comptoirs européens de la côte.

En 1782, Hogbonou, la capitale du royaume d'Adjatché, fut baptisée Porto-Novo par les Portugais installés dans le comptoir négrier de Ouidha.

Dans la première moitié du XIXe siècle, sous le long règne (1818-1858) du roi Guézo, le royaume d'Abomey développa l'agriculture vivrière et commerciale en introduisant de nouvelles plantes: maïs, tomate, arachide et tabac. Cependant, la traite exercée aux dépens des peuples voisins pesa lourdement sur l'économie du pays

En 1851, la France a signé un traité commercial et d'amitié avec le chef du petit royaume côtier de Porto-Novo. Par les traités de 1868 et de 1878, la région de Cotonou, située entre Ouidah, comptoir portugais, et Porto-Novo, fut cédée à la France.

En 1883, le roi de Porto-Novo, désirant se protéger des visées expansionnistes du Dahomey, signa un traité de protectorat avec la France. Le roi Béhanzin tenta de reconquérir la région occupée par les Français, mais il fut battu en 1892, capturé en janvier 1894 et déporté en Martinique. Les établissements français de la région furent regroupés au sein de la colonie du Dahomey.

En 1899, le Dahomey fut intégré à l'Afrique occidentale française (AOF). Ses frontières furent fixées en accord avec la Grande-Bretagne établie au Nigeria et l'Allemagne occupant le Togo. Durant l'entre-deux-guerres, le Dahomey, où la scolarisation grâce aux missions religieuses, était importante, notamment dans le Sud, fut l'un des principaux foyers politiques et intellectuels de l'AOF. De nombreux partis politiques furent fondés dès cette époque, tandis que se développait une presse d'opposition au système colonial.

En 1958, le pays devint la "république du Dahomey", un Etat autonome au sein de la Communauté française. L'indépendance fut proclamée le 1er août 1960, à Porto Novo, la capitale du nouvel Etat qui devint, le mois suivant, membre des Nations unies.

Le Bénin a une histoire politique très mouvementée. Surnommé le "Quartier latin de l'Afrique" durant l'époque coloniale en raison de sa vie politique, le pays connut quatre régimes successifs dirigés par des hommes du Sud jusqu'au coup d'Etat du Général Mathieu Kérékou en 1972.

Les 12 premières années ont été marquées par une instabilité chronique, les anciennes élites coloniales, pour la plupart originaires du Sud, se disputant le pouvoir.

En 1972, le Général Mathieu Kérékou destitua le Conseil présidentiel et devint le chef d'un Etat auquel il voulut donner peu à peu une orientation marxiste-léniniste.

En 1975, pour réduire le poids politique du Sud, le nom de Dahomey (république du Dahomey) fut symboliquement abandonné pour celui de Bénin (République populaire du Bénin), du nom du royaume qui s'était autrefois épanoui au Nigeria voisin. Une nouvelle constitution, instaurant un régime à parti unique, fut promulguée en 1977.

Toujours en 1997, une tentative de coup d'Etat appuyée par des mercenaires échoua et durcit davantage le régime. Les trois anciens présidents, emprisonnés en 1972, furent libérés en 1981. Au cours de cette période, les dirigeants du pays n'ont jamais pensé modifier le statut de la langue française, qui demeura la langue officielle, notamment dans l'Administration, la Justice et les Ecoles.

Durant les années quatre-vingt, la situation économique du Bénin continua de se dégrader, alors que la répression antidémocratique se durcit. Les problèmes sociaux et politiques conduisirent le président Kérékou à renoncer à l'idéologie marxiste-léniniste et à accepter l'instauration d'une Conférence nationale, réunissant les représentants des différents mouvements politiques.

Un gouvernement de transition, mis en place en 1990, ouvrit la voie au retour de la démocratie et du multipartisme. Le premier ministre, Nicéphore Soglo, battit Kérékou à l'élection présidentielle de mars 1991. Cependant, les ajustement structurels et la compression des dépenses publiques recommandées par le Fonds Monétaire International FMI ravivèrent le mécontentement de la population. Après avoir perdu sa majorité au sein de l'Assemblée Générale, le président Soglo, accusé de népotisme par ses adversaires, fut battu par Mathieu Kérékou qui revint au pouvoir lors de la présidentielle du 17 mars 1996.

Après le multipartisme, ce fut ensuite l'alternance. En mars 2001, Mathieu Kérékou fut réélu président de la République avec 84 % des voix. A l'âge de 67 ans, il entamait donc un second mandat consécutif dans des conditions difficiles. Malgré les réformes, le Bénin demeure encore l'un des pays les plus pauvres du continent africain et reste toujours un pays en voie de développement.

Aujourd'hui, avec la mise en place d'un gouvernement démocratique, une aide internationale accrue vint de la Banque Mondiale, du Fonds Monétaire International et de beaucoup de puissances Occidentales. Le Bénin a pu liquider certaines dettes et construire des hôpitaux et des routes. Les entreprises publiques furent privatisées et les banques privées arrivèrent. Mais cette période a connu beaucoup de difficultés aussi. La dévaluation du CFA en 1994 et d'autres problèmes économiques ont été à l'origine de la chute probable du Président Soglo par le public.

En 1996, le Général Kérékou fut ramené au pouvoir par la voie des urnes. En mars 2001, il fut réélu pour un second mandat. Bien qu'il subsiste encore beaucoup de problèmes dans le pays, tels que le chômage et le manque de financement pour les programmes sociaux. Le Bénin est généralement considéré comme un modèle de réussite de démocratisation en Afrique de l'Ouest. Les entreprises privées continuent de croître et le peuple affiche un optimisme inébranlable. L'avenir du Bénin est prometteur.

Source : www.estis.net