'.$_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

LES AMAZONES

 

une armée de femmes au service d'un Royaume

 

Composé de femmes guerrières, le corps des Amazones aurait été créé par le roi Agadja (1708-1740). Son père, le roi Houégbadja, avait déjà créé un détachement de "chasseresses d'éléphants" qui faisait également fonction de gardes du corps. Mais Agadja en fit de vraies guerrières. "Elles sont là, 4000 guerrières, les 4000 vierges noires du Dahomey, gardes du  corps du monarque, immobiles aussi sous leurs chemises de guerre, le fusil et le couteau au poing, prêtes à bondir sur un signal du maître.

Vieilles ou jeunes, laides ou jolies, elles sont merveilleuses à contempler. Aussi solidement musclées que les guerriers noirs, leur attitude est aussi disciplinée et aussi correcte, alignées, comme au cordeau".

D'après A. Djivo, dans Guézo, la rénovation du Dahomey, certaines femmes s'enrôlaient volontairement, d’autres, difficiles dans le ménage et dont les maris s'étaient plaints au roi, étaient enrôlées d’office. Le service militaire les disciplinait et la force de caractère qu’elles manifestaient dans la vie conjugale pouvait s'exprimer dans l’action militaire.
Sur les champs de bataille, elles protègaient le roi et prenaient activement part aux combats, sacrifiant leur vie au besoin. Guézo leur disait : "Quand vous allez en guerre, si vous êtes faites prisonnières, vous serez sacrifiées et vos corps deviendront de la nourriture pour les charognards et les hyènes."
Elles ne pouvaient ni se marier ni avoir d’enfants tant qu’elles étaient dans l’armée : elles étaient formées à la guerre et elles devaient en principe y consacrer leur vie.
"Nous sommes des hommes, non des femmes. Celles qui rentrent d’une guerre sans avoir conquis doivent mourir. Si nous battons en retraite, notre vie est à la merci du roi. Quelle que soit la ville à attaquer, nous devons la conquérir ou nous enterrer nous-mêmes dans ses ruines. Guézo est le roi des rois. Tant qu’il vivra nous ne craindrons rien".
"Guézo nous a donné à nouveau le jour. Nous sommes ses femmes, ses filles, ses guerrières. La guerre est notre passe-temps, elle habille, elle nourrit".



Cette armée aguerrie, souvent enivrée au gin, accoutumée à la souffrance et prête à tuer sans se soucier de sa propre vie, combattait avec vaillance, toujours à l'avant des troupes qu'elle excitait au combat.
En 1894, au début de la guerre entre les troupes du Général Dodds et celles du royaume d'Abomey, l'armée comptait environ 4000 amazones, réparties en trois brigades. "Elles sont armées de coupe-coupe à deux tranchants et de carabines Winchester. Ces amazones font des prodiges de valeur ; elles viennent se faire tuer à trente mètres de nos carrés..." (Capitaine Jouvelet, 1894).
Le corps des amazones sera dissout après la défaite du royaume d'Abomey, par le successeur de Gbêhanzin, Agoli Agbo.


De nos jours  le nom « Dahomey » n’évoque peut être plus grand-chose. Il s’est pourtant produit des événements extraordinaires sur ce territoire connu aujourd’hui sous le nom de Bénin, et ce, depuis 1975.
Le Bénin se situe en Afrique de l’ouest entre le Togo, et le Nigéria.

Au 15ème siècle, les Portugais explorent le territoire. Petit à petit, le Dahomey devient célèbre pour sa traite négrière, surtout entre le 17ème et le 18ème siècle. Il sera connu sous le nom de « Côte des Esclaves Â».

Alors que les Britanniques et les Français se battent pour contrôler la Boucle du Niger, les Français parviennent progressivement à imposer leur domination au Dahomey.
Au départ il s’agit d’un traité d’ Â« amitié et de commerce Â» en 1851. En 1861 ils obtiennent une autorisation pour que les missionnaires viennent s’y installer, en 1864 ils obtiennent le protectorat de la ville de Cotonou et sur le Royaume de Porto-Novo.
En 1892, la France décide d’attaquer le Dahomey en évoquant des prétextes tels que le cannibalisme, les sacrifices humains ou la polygamie pratiqués  par la population autochtone. Il s’agit pour la France en réalité d’agrandir sa domination en Afrique Equatoriale Française (AEF) et d’atteindre également les possessions britanniques qui dominent le Nigéria.
Le Colonnel Dodds est à la tête de cette armée qui s’apprête à attaquer le Dahomey.
Son armée est composée de plus de 3000 hommes qui partent de la côte, de Cotonnou, et qui se dirigent vers Abomey, capitale du pays. Leur cible, le Roi Béhanzin qui dirige le Royaume du Dahomey.

Les populations locales qui ont pourtant affaire à une armée inattendue, ne vont pourtant pas se laisser faire.
En effet, même si leurs moyens sont très rudimentaires comparés aux armements des Français, ils tiendront tête à ces derniers et se montreront récalcitrants pendant au moins deux années.

La date du 26 octobre 1892 restera à jamais marquée dans la tête du Colonnel Dodds, qui parlera de la journée la plus « meurtrière Â» de cette guerre. En fait, alors qu’ils ne sont qu’à 50 kilomètres d’Abomey, les soldats français se retrouvent ce jour là confrontés à un phénomène étrange et auquel ils n'ont jusque là encore jamais eu affaire: devant eux, une armée immense leur bloque le passage. Cette armée est composée de femmes !Qui sont elles ?
Très vite, Dodds en est informé : ce sont les « Amazones Â» du Roi Béhanzin, des femmes guerrières connues pour se battre avec violence et énergie. Elles n’ont absolument pas peur de la mort, et tue ne leur fait pas froid aux yeux.
On les laisse combattre au devant de l’armée car elles sont sans pitié face à leurs ennemis et très résistantes au combat. Dodds avait lui même entendu parler de SEH-DONG-HONG-BEH, une femme au courage exceptionnel qui avait dirigé une amée de 6000 Amazones vers 1852. Pour Dodds, il y a donc de quoi sérieusement s’inquiéter.

Les Amazones du Dahomey sont minutieusement sélectionnées à l’adolescence, et toute leur vie elles s’exercent au métier des armes. Leur entraînement quotidien est très pénible : elles apprennent à manier les armes et sont conditionnées psychologiquement et religieusement à l’obéissance et à la vénération du Roi.
Elles sont vierges et doivent éliminer toute possibilité de fonder une famille, elles sont donc condamnées au célibat.



Une Amazone au repos
Mis à part les armes de combat, les Amazones sont armées d’amulettes destinées à les protéger contre les attaques de leurs ennemis et à faire fuir les mauvais esprits.
En 1990, le Roi Behanzin aurait négocié avec les Allemands en tronquant 400 esclaves contre 26 000 fusils, 6 canons, 4 mitrailleuses et des munitions. L’organisation de l’armée des amazones du Dahomey est répartie en 5 spécialités dont 3 infanteries :
-          les fusillères qu’on appelle « les Gulonento Â»; elles portent une cartouchière à compartiments. Leur poudre est soigneusement conservée dans des feuilles de bananiers.
-          le archères  ou « les Gohento Â» (on en trouve de moins à moins depuis l’existence des armes à feu); elles restent néanmoins présentes et servent d’auxiliaires et de « porteuses Â» pendant les combats.
-          les faucheuses appelées « les Nyekplohento Â» armées d’une énorme lame de 45 cm au bout d’un manche de 60 cm
-          les artilleuses
-          et l’Elite, les chassereuses qui sont sélectionnées pour leur force physique et leur stature. Elles sont très respectées. Normalement, elles ne participent que rarement au combat et seulement quand il s’agit d’un grand combat mettant le Roi Béhanzin lui-même en danger, ainsi que la nation.
Vous comprendrez donc que contre les Français, leur présence était de rigueur.

Dans un cas de force majeure comme celle-ci, les Amazones  utilisent la technique dans laquelle elles excellent, la technique du corps à corps. Ainsi, tandis que les Français instaurent une certaine distance, elles cherchent à trouver le moyen de créer un affrontement physique. Elles vont pratiquer le « roulé-boulé Â» pour s’infiltrer en dessous des haies des baillonnettes des soldats français pour les piéger physiquement.
Les Français sont véritablement surpris par leur courage et et elles n’hésitent pas à brandir des têtes de leurs ennemis qu’elles ont sauvagement décapités pour les déstabiliser. Quand elles réussissent à les confronter physiquement, elles sont souvent gagnantes.

Toutefois, et malgré une résistance terrible, les Amazones ne peuvent plus faire face aux Français qui utilisent des équipements visiblement sophistiqués. Elles périssent de plus en plus, et alors qu’elles étaient au nombre de 1200, elle ne sont plus qu’une centaine à combattre l'armée française qui a elle aussi diminué en nombre.
Elles n’ont plus assez d’espoir, mais elles refusent de lâcher prise. Certaines manifestent leur colère et leur haine aux Français en se coupant un sein et en frappant violemment à mort ceux qu’ils arrivent à attraper. Au final, en novembre 1892, lorsque les Français parviennent à la capitale, elles ne sont plus qu’une cinquantaine.
C’est la chute du Royaume Dahomey et la fin de celles du corps d’armée des Amazones.

Source : www.estis.net