New file |
0,0 → 1,263 |
<? |
|
// Mon "meta filtre" qui appelle tous les autres |
function fl_complements($texte_in){ |
$texte = fl_protocolesobsform( |
fl_envoiobsform( |
fl_annuaire( |
fl_carteform( |
fl_cartographie( |
fl_listepart( |
fl_graphiqueform( |
fl_historiqueform( |
fl_inscriptionform( |
fl_nbinscrits($texte_in)))))))))); |
|
|
return $texte; |
} |
function fl_inside($texte_in){ |
$texte = fl_graphiqueform($texte_in); |
return $texte; |
} |
|
//fonction contrôlant l'apparition du nombre d'inscrits |
function fl_nbinscrits($fl_txt){ |
$fl_patern_in="|<nb_inscrits([^>]*?)>|i"; |
$fl_replace_in1=""; |
if (preg_match($fl_patern_in, $fl_txt, $matches) ) { |
$GLOBALS['nb_inscrits']=true; |
if (trim($matches[1])<>""){ |
$notif_email=trim($matches[1]); |
} |
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt); |
} |
|
return $fl_txt; |
} |
|
//fonction contrôlant l'apparition d'un formaulaire de génération de graphiques |
function fl_graphiqueform($fl_txt){ |
$fl_patern_in="|<graphique([^>]*?)>|i"; |
$fl_replace_in1=""; |
if (preg_match($fl_patern_in, $fl_txt, $matches) ) { |
$GLOBALS['graphique']=true; |
if (trim($matches[1])<>""){ |
$notif_email=trim($matches[1]); |
} |
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt); |
} |
|
return $fl_txt; |
} |
|
// fonction contrôlant l'apparition d'un formulaire d'inscription |
function fl_inscriptionform($fl_txt){ |
global $notif_email; |
// On récupère le/les email(s) pour la notification |
$fl_patern_in="|<inscription([^>]*?)>|i"; |
$fl_replace_in1=""; |
if (preg_match($fl_patern_in, $fl_txt, $matches) ) { |
$GLOBALS['inscription']=true; |
if (trim($matches[1])<>""){ |
$notif_email=trim($matches[1]); |
} |
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt); |
} |
|
return $fl_txt; |
} |
|
// fonction contrôlant l'apparition de la cartographie (mrflos) |
function fl_cartographie($fl_txt){ |
global $notif_email; |
// On récupère le/les email(s) pour la notification |
|
$fl_patern_in="|<cartographie([^>]*?)>|i"; |
$fl_replace_in1=""; |
if (preg_match($fl_patern_in, $fl_txt, $matches) ) { |
$GLOBALS['cartographie']=true; |
if (trim($matches[1])<>""){ |
$notif_email=trim($matches[1]); |
} |
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt); |
} |
|
return $fl_txt; |
} |
|
// fonction contrôlant l'apparition de la cartographie (mrflos) |
function fl_annuaire($fl_txt){ |
global $notif_email; |
// On récupère le/les email(s) pour la notification |
|
$fl_patern_in="|<annuaire([^>]*?)>|i"; |
$fl_replace_in1=""; |
if (preg_match($fl_patern_in, $fl_txt, $matches) ) { |
$GLOBALS['annuaire']=true; |
if (trim($matches[1])<>""){ |
$notif_email=trim($matches[1]); |
} |
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt); |
} |
|
return $fl_txt; |
} |
|
// fonction contrôlant l'apparition d'un formulaire d'envoi d'observations |
function fl_historiqueform($fl_txt){ |
$fl_patern_in="|<historique([^>]*?)>|i"; |
$fl_replace_in1=""; |
if (preg_match($fl_patern_in, $fl_txt, $matches) ) { |
$GLOBALS['historique']=true; |
if (trim($matches[1])<>""){ |
$notif_email=trim($matches[1]); |
} |
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt); |
} |
|
return $fl_txt; |
} |
|
// fonction contrôlant l'apparition d'un formulaire d'envoi d'observations |
function fl_envoiobsform($fl_txt){ |
$fl_patern_in="|<envoi_obs([^>]*?)>|i"; |
$fl_replace_in1=""; |
if (preg_match($fl_patern_in, $fl_txt, $matches) ) { |
$GLOBALS['envoi_obs']=true; |
if (trim($matches[1])<>""){ |
$notif_email=trim($matches[1]); |
} |
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt); |
} |
|
return $fl_txt; |
} |
|
// fonction contrôlant l'apparition d'un formulaire d'envoi d'observations |
function fl_carteform($fl_txt){ |
$fl_patern_in="|<carte([^>]*?)>|i"; |
$fl_replace_in1=""; |
if (preg_match($fl_patern_in, $fl_txt, $matches) ) { |
$GLOBALS['carteform']=true; |
if (trim($matches[1])<>""){ |
$notif_email=trim($matches[1]); |
} |
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt); |
} |
|
return $fl_txt; |
} |
|
// fonction contrôlant l'apparition de la liste des participants |
function fl_listepart($fl_txt){ |
$fl_patern_in="|<liste([^>]*?)>|i"; |
$fl_replace_in1=""; |
if (preg_match($fl_patern_in, $fl_txt, $matches) ) { |
$GLOBALS['liste']=true; |
if (trim($matches[1])<>""){ |
$notif_email=trim($matches[1]); |
} |
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt); |
} |
|
return $fl_txt; |
} |
|
// fonction contrôlant l'apparition d'un formulaire d'envoi d'observations |
function fl_protocolesobsform($fl_txt){ |
$fl_patern_in="|<protocoles_obs([^>]*?)>|i"; |
$fl_replace_in1=""; |
if (preg_match($fl_patern_in, $fl_txt, $matches) ) { |
$GLOBALS['protocoles_obs']=true; |
if (trim($matches[1])<>""){ |
$notif_email=trim($matches[1]); |
} |
$fl_txt = preg_replace($fl_patern_in, "$fl_replace_in1", $fl_txt); |
} |
|
return $fl_txt; |
} |
|
|
// Fonctions génériques provenant du livre PHP4 |
// Utilisées entre autre pour les inscriptions aux colloques |
function supprimer_encodage_MQ($valeur) { |
// si magic quotes est actif, retourner |
// la valeur après suppression de l'encodage |
// (appel à stripslashes), sinon, retourner |
// la valeur |
return (get_magic_quotes_gpc())? |
stripslashes($valeur):$valeur; |
} |
function valeur_saisie($valeur) { |
return supprimer_encodage_MQ ( trim($valeur)); |
} |
function vers_formulaire($valeur) { |
|
// affichage dans un formulaire |
|
// encoder tous les caractères HTML spéciaux |
// - ENT_QUOTES : dont " et ' |
return htmlentities($valeur,ENT_QUOTES); |
|
} |
function vers_page($valeur) { |
|
// affichage direct dans une page |
|
// 1. encoder tous les caractères HTML spéciaux |
// - ENT_QUOTES : dont " et ' |
// 2. transformer les sauts de ligne en <BR> |
return nl2br(htmlentities($valeur,ENT_QUOTES)); |
|
} |
function vers_base($valeur) { |
// le seul caractère qui pose vraiment problème est |
// l'apostrophe (') ; c'est donc le seul qui est échappé |
// par cette fonction |
// une solution valable pour toutes les bases consiste à |
// l'échapper par lui-même remplacement de ' par '' |
return str_replace("'","''",$valeur); |
} |
function construire_requete($requete) { |
|
// récupérer le nombre de paramètre |
$nombre_param = func_num_args(); |
// boucler sur tous les paramètres à partir du deuxième |
// (le premier contient la requête de base) |
for($i=1;$i<$nombre_param;$i++) { |
|
// récupérer la valeur du paramètre |
$valeur = func_get_arg($i); |
|
// si c'est une chaîne, remplacer ' par '' |
if (is_string($valeur)) { |
$valeur = str_replace("'","''",$valeur); |
} |
|
// mettre la valeur à son emplacement %n (n = $i) |
$requete = str_replace("%$i",$valeur,$requete); |
} |
// retourner la requête |
return $requete; |
} |
|
function affiche_msg($message) |
{ |
$message=addslashes($message); |
echo "<script language=\"JavaScript\" type=\"text/JavaScript\">\n"; |
echo "<!--\n"; |
echo "alert( '$message')\n"; |
echo "//-->\n"; |
echo "</script>\n"; |
} |
|
function fl_at($fl_txt){ |
$rechercher="@"; |
$remplacer="<a class=\"hackers\" href=\"mailto:support@microsoft.com\"></a><img src=\"squelettes/design/at.gif\" border=\"0\" align=\"middle\" alt=\"at\" /><a class=\"hackers\" href=\"mailto:support@microsoft.com\"></a>"; |
$fl_txt = str_replace($rechercher,$remplacer,$fl_txt); |
return $fl_txt; |
} |
|
?> |