Différences

Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue

util:adherents.2016.05.28 [2017/07/22 11:53] (Version actuelle)
Ligne 1: Ligne 1:
 +~~NOCACHE~~
 +
 +<?
 +<php>
 +define('XML_FILEPATH', './statique/adherents/public/');
 +// define('XML_FILENAME', '2011-2012_adherents.xml');
 +// define('XML_FILENAME', '2012-2013_adherents.xml');
 +// define('XML_FILENAME', '2013-2014_adherents.xml');
 +define('XML_FILENAME', '2014-2015_adherents.xml');
 +
 +
 +
 +include_once(dirname(__FILE__) . '/../../statique/util/lib-xml-xsl/lib-xml-xsl.inc.php');  // procXSLstr_dom
 +// include_once(dirname(__FILE__) . '/../../statique/util/dyna/uniq_adherents_xslt.php');   
 +include_once(dirname(__FILE__) . '/../../statique/util/dyna/req_arr_adherents_xslt.php');  // xsl_str__liste_prof() - xsl_str__liste_attribute(...) - xsl_str__liste_element(...)
 +include_once(dirname(__FILE__) . '/../../statique/util/dyna/abstract_adherents_xslt.php'); // xsl_str__abstract()
 +
 +
 +
 +// utilise le XSL renvoyé par  xsl_str__liste_attribute(...);
 +function list_uniq_values_attribute($xml_filename, $dom_path, $attribute, $sort_type = SORT_STRING) // SORT_STRING|SORT_FLAG_CASE
 +{
 +   $xmldom = loadXML_dom(XML_FILEPATH . $xml_filename, 'adherents');
 +   // Affichage grâce à XSLT : XML -> XSLT -> ;$less -> array -> get-rid-of-doubons
 +
 +   if ($sort_type == SORT_STRING)
 +   {
 +      // Version avec tri alphabétique
 +      $array_exhau = explode(",", preg_replace('/;$/', '', procXSLstr_dom($xmldom, xsl_str__liste_attribute($dom_path, $attribute))));
 +      $array_items = array_unique($array_exhau);
 +      $array_count = array_count_values($array_exhau);
 +     
 +      sort($array_items, $sort_type);
 +      //
 +      echo '<ul>' . "\n";
 +        foreach ($array_items as &$item)
 +          if ($item != '')
 +            echo '<li class="level1"><div class="li">' . $item .  ' -> ' . $array_count[$item] . '</div></li>' . "\n";
 +      echo '</ul>' . "\n";
 +   }
 +   else
 +   {   
 +      // Version avec tri sur les valeurs croissantes
 +      $array_count = array_count_values(explode(",", preg_replace('/;$/', '', procXSLstr_dom($xmldom, xsl_str__liste_attribute($dom_path, $attribute)))));
 +      //
 +      asort($array_count, SORT_NUMERIC);
 +      //
 +      echo '<ul>' . "\n";
 +        foreach ($array_count as $item => &$value)
 +          if ($item != '')
 +            echo '<li class="level1"><div class="li">' . $item .  ' -> ' . $array_count[$item] . '</div></li>' . "\n";
 +      echo '</ul>' . "\n";
 +   }
 +}
 +
 +
 +// utilise le XSL renvoyé par  xsl_str__liste_element(...);
 +function list_uniq_values_element($xml_filename, $dom_path, $element, $sort_type = SORT_STRING)
 +{
 +   $xmldom = loadXML_dom(XML_FILEPATH . $xml_filename, 'adherents');
 +   // Affichage grâce à XSLT : XML -> XSLT -> ;$less -> array -> get-rid-of-doubons
 +   
 +   if ($sort_type == SORT_STRING)
 +   {
 +      // Version avec tri alphabétique
 +      $array_exhau = explode(",", preg_replace('/;$/', '', procXSLstr_dom($xmldom, xsl_str__liste_element($dom_path, $element))));
 +      $array_items = array_unique($array_exhau);
 +      $array_count = array_count_values($array_exhau);
 +      sort($array_items, $sort_type);
 +      //
 +      echo '<ul>' . "\n";
 +        foreach ($array_items as &$item)
 +          if ($item != '')
 +            echo '<li class="level1"><div class="li">' . $item . '</div></li>' . "\n";
 +      echo '</ul>' . "\n";
 +   }
 +   else
 +   {
 +      // Version avec tri sur les valeurs croissantes
 +      $array_count = array_count_values(explode(",", preg_replace('/;$/', '', procXSLstr_dom($xmldom, xsl_str__liste_element($dom_path, $element)))));
 +      //
 +      asort($array_count, SORT_NUMERIC);
 +      //
 +      echo '<ul>' . "\n";
 +        foreach ($array_count as $item => &$value)
 +          if ($item != '')
 +            echo '<li class="level1"><div class="li">' . $item .  ' -> ' . $array_count[$item] . '</div></li>' . "\n";
 +      echo '</ul>' . "\n";
 +   }
 +}
 +</php>
 +
 +
 +
 +======  ======
 +-----
 +===== Adhérents =====
 +\\
 +
 +<php>/* echo date('Ymd_His_') . "\r\n"; -> 20150428_140907_ */</php>
 +
 +==== Genre adhérent ====
 +
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent', 'genre');</php>
 +
 +\\
 +
 +==== Genre responsable ====
 +
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/responsable', 'genre');</php>
 +
 +\\
 +
 +==== Qualité ====
 +
 +Valeurs autorisées :
 +  * Adhérent
 +  * Professeur
 +  * Administrateur
 +  * Adhérent et administrateur
 +\\
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_element(XML_FILENAME, './qualites', 'qualite');</php>
 +\\
 +
 +<php>
 +/*
 +      echo '<pre>' . "\r\n";
 +   echo "\r\n" . "\r\n";
 +      echo htmlspecialchars(   xsl_str__liste_element('./qualites', 'qualite')  );
 +   echo "\r\n" . "\r\n";
 +      echo '</pre>' . "\r\n";
 +*/
 +</php>
 +
 +==== Commentaire ====
 +
 +<php>echo list_uniq_values_element(XML_FILENAME, './commentaires', 'commentaire');</php>
 +
 +==== Ville ====
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/adresses[1]/adresse', 'ville', SORT_NUMERIC);</php>
 +
 +======  ======
 +-----
 +===== Activités =====
 +\\
 +
 +
 +==== Professeurs ====
 +
 +<php>
 +// chargement du fichier xml
 +// $xmldom = loadXML_dom(XML_FILEPATH . XML_FILENAME, 'adherents');
 +
 +/*
 +      echo '<pre>' . "\r\n";
 +      echo htmlspecialchars_decode(   procXSLstr_dom($xmldom, xsl_str__liste_attribute('/adherents/adherent/activites/activite', 'professeur', SORT_NUMERIC))   );
 +      echo "\r\n" . "\r\n";
 +      echo htmlspecialchars_decode(   procXSLstr_dom($xmldom, xsl_str__liste_prof_uniq())   ); // problème d'accents, diacritiques et autres entities
 +      echo '</pre>' . "\r\n";
 +*/
 +</php>
 +
 +Valeurs autorisées :
 +\\
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/activites/activite', 'professeur', SORT_NUMERIC);</php>
 +\\
 +
 +==== Formule cours ====
 +
 +Valeurs autorisées :
 +\\
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/activites/activite', 'formule');</php>
 +\\
 +
 +==== Type d´activité ====
 +
 +Valeurs autorisées :
 +\\
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/activites/activite', 'type');</php>
 +\\
 +
 +==== Musique ====
 +
 +Valeurs autorisées :
 +\\
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/activites/activite', 'musique', SORT_STRING);</php>
 +\\
 +
 +==== Niveau ====
 +
 +Valeurs autorisées :
 +\\
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/activites/activite', 'niveau');</php>
 +\\
 +
 +======  ======
 +-----
 +===== Créneau =====
 +\\
 +
 +==== date ====
 +
 +Valeurs autorisées :
 +\\
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/activites/activite/creneau', 'date', SORT_NUMERIC); /* , SORT_STRING|SORT_FLAG_CASE */</php>
 +\\
 +
 +==== heure ====
 +
 +Valeurs autorisées :
 +\\
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/activites/activite/creneau', 'heure');</php>
 +\\
 +
 +==== duree ====
 +
 +Valeurs autorisées :
 +\\
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/activites/activite/creneau', 'duree', SORT_NUMERIC);</php>
 +\\
 +
 +==== salle ====
 +
 +Valeurs autorisées :
 +\\
 +Valeurs rencontrées :
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/activites/activite/creneau', 'salle');</php>
 +\\
 +
 +
 +======  ======
 +-----
 +===== Règlement =====
 +\\
 +
 +=== État ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]', 'etat');</php>
 +
 +=== Adhésion : Mode de paiement ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/adhesion', 'mode_paiement');</php>
 +
 +=== Adhésion : Montant ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/adhesion', 'montant', SORT_NUMERIC);</php>
 +
 +=== Adhésion : Numéro de remise de chèque ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/adhesion', 'numero_remise_cheque');</php>
 +
 +=== Échéances : Formule de paiement de la cotisation ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/echeances', 'formule_paiement_cotisation');</php>
 +
 +=== Échéances : Montant cours ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/echeances', 'montant_cours', SORT_NUMERIC);</php>
 +
 +=== Échéances : Nombre d´échéances ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/echeances', 'nombre_echeance', SORT_NUMERIC);</php>
 +
 +=== Liste d´échéances : Montant ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/echeances/echeance', 'montant', SORT_NUMERIC);</php>
 +
 +=== Liste d´échéances : Numéro de remise de chèque ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/echeances/echeance', 'numero_remise_cheque');</php>
 +
 +=== Complément : Formule de paiement ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/complement', 'formule_paiement');</php>
 +
 +=== Complément : Montant ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/complement', 'montant', SORT_NUMERIC);</php>
 +
 +=== Complément : Nombre d´échéances ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/reglement[1]/complement', 'nombre_echeances', SORT_NUMERIC);</php>
 +
 +
 +
 +======  ======
 +-----
 +===== Pièces =====
 +\\
 +
 +
 +=== Adhésion ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces[1]', 'adhesion', SORT_NUMERIC);</php>
 +
 +=== Règlement intérieur ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces[1]', 'reglement_interieur');</php>
 +
 +=== Photo ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces[1]', 'photo');</php>
 +
 +=== Enveloppe ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces[1]', 'enveloppes');</php>
 +
 +=== Statut ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces[1]', 'statut');</php>
 +
 +=== Timbre ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces[1]', 'timbres');</php>
 +
 +=== Costume ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces_danse[1]', 'costume', SORT_NUMERIC);</php>
 +
 +=== License ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces_danse[1]', 'licence', SORT_NUMERIC);</php>
 +
 +=== Certificat ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces_resp[1]', 'certif');</php>
 +
 +=== Assurance ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces_resp[1]', 'assurance');</php>
 +
 +=== Fiche ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces_resp[1]', 'fiche');</php>
 +
 +=== Engagement ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces_resp[1]', 'engagements');</php>
 +
 +=== Droît à l´image ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces_resp[1]', 'droit_image');</php>
 +
 +=== Départ seul ===
 +
 +<php>echo list_uniq_values_attribute(XML_FILENAME, '/adherents/adherent/pieces_resp[1]', 'depart_seul');</php>
 +
 +\\
 +
 +====== Adhérents ======
 +
 +<php>
 +
 +if (   (isset($_POST['consulter']))
 +    && (strcmp($_POST['consulter'], 'Consulter') == 0) )
 +{
 +    echo '<p>Consultation  </p>' . "\r\n";
 +    // echo '<p>id_adherents in xml is : ' . $_POST['id_adherents'] . '</p>' . "\r\n";
 + // echo '<p>$_POST[ consulter ] is : ' . $_POST['consulter'] . '</p>' . "\r\n";
 + echo '<p>&nbsp;</p>' . "\r\n";
 + //
 +
 + $xmldom = loadXML_dom(XML_FILEPATH . XML_FILENAME, 'adherents');
 +
 +
 + // On récupère l'id de l'adhérent
 + $id_adh  = $_POST['id_adherents'];
 +// $element = 'activites/activite';
 +
 + $xsl_adherent_id = 'adherent' . '[' . '@id_adh = ' . $id_adh . ']';
 +
 +// $xsl_text_function = 'text()';
 +// $xsl_adherent_id_text = $element . '[' . $xsl_text_function . ']';
 +
 +
 +///////////////////////////////////////////////////////////////////////////////////////////////////
 +
 +$xsl_str_first_try = <<<"EOT"
 +<?xml version="1.0" encoding="ISO-8859-1"?>
 +<!DOCTYPE xsl:stylesheet SYSTEM "../util/lib-xml-xsl/xsl-html.dtd">
 +
 +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 +<xsl:output method="text"
 +            indent="no"
 +            encoding="ISO-8859-1"
 +            omit-xml-declaration = "yes" />
 +
 +<xsl:preserve-space elements="no" /> 
 +
 +<xsl:template match="/adherents">
 + <xsl:for-each select="$xsl_adherent_id">
 + <xsl:if test="not(@nom = '')"><xsl:value-of select="@nom" />, </xsl:if>
 + <xsl:if test="not(@prenom = '')"><xsl:value-of select="@prenom" />, </xsl:if>
 + <xsl:if test="not(@date_naissance = '')"><xsl:value-of select="@date_naissance" />, </xsl:if>
 +<!-- @nom @prenom @date_naissance -->
 +
 + <![CDATA[<br />]]>
 +
 + <xsl:for-each select="activites">
 + <xsl:for-each select="activite"> <!-- si je mets activite[1] ici alors je n'ai que le premier lot -->
 + <![CDATA[&nbsp;&nbsp;*&nbsp;]]>
 + <xsl:if test="not(@formule = '')"><xsl:value-of select="@formule" />, </xsl:if>
 + <xsl:if test="not(@type = '')"><xsl:value-of select="@type" />, </xsl:if>
 + <xsl:if test="not(@musique = '')"><xsl:value-of select="@musique" />, </xsl:if>
 + <xsl:if test="not(@professeur = '')"><xsl:value-of select="@professeur" />, </xsl:if>
 + <xsl:if test="not(@niveau = '')"><xsl:value-of select="@niveau" />, </xsl:if>
 +
 + <xsl:for-each select="creneau">
 + <xsl:if test="not(@date = '')"><xsl:value-of select="@date" />, </xsl:if>
 + <xsl:if test="not(@heure = '')"><xsl:value-of select="@heure" />, </xsl:if>
 + <xsl:if test="not(@duree = '')"><xsl:value-of select="@duree" />, </xsl:if>
 + <xsl:if test="not(@salle = '')"><xsl:value-of select="@salle" />, </xsl:if>
 + </xsl:for-each>
 +
 + <!-- array explode ( string $delimiter , string $string [, int $limit ] ) -->
 +
 + <![CDATA[<br />]]>
 + </xsl:for-each>
 + </xsl:for-each>
 +
 + </xsl:for-each>
 +
 +</xsl:template>
 +
 +</xsl:stylesheet>
 +EOT;
 +
 +
 +
 +///////////////////////////////////////////////////////////////////////////////////////////////////
 +
 +$xsl_str = <<<"EOT"
 +<?xml version="1.0" encoding="ISO-8859-1"?>
 +<!DOCTYPE xsl:stylesheet SYSTEM "../util/lib-xml-xsl/xsl-html.dtd">
 +
 +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 +<xsl:output method="text"
 +            indent="no"
 +            encoding="ISO-8859-1"
 +            omit-xml-declaration = "yes" />
 +
 +<xsl:preserve-space elements="no" /> 
 +
 +<xsl:template match="/adherents">
 + <xsl:for-each select="$xsl_adherent_id">
 + <xsl:if test="not(@id_adh = '')">id_adherent|<xsl:value-of select="@id_adh" />$ </xsl:if>
 + <xsl:if test="not(@nom = '')">nom_adherent|<xsl:value-of select="@nom" />$ </xsl:if>
 + <xsl:if test="not(@prenom = '')">prenom_adherent|<xsl:value-of select="@prenom" />$ </xsl:if>
 + <xsl:if test="not(@genre = '')">genre_adherent|<xsl:value-of select="@genre" />$ </xsl:if>
 + <xsl:if test="not(@date_naissance = '')">date_naissance|<xsl:value-of select="@date_naissance" />$ </xsl:if>
 +<!-- @nom @prenom @date_naissance -->
 +
 + <xsl:for-each select="valide[1]">
 + valide|<xsl:value-of select="text()" />$
 + </xsl:for-each>
 +
 + <xsl:for-each select="datetime[1]">
 + datetime|<xsl:value-of select="text()" />$
 + </xsl:for-each>
 +
 + <xsl:for-each select="responsable[1]">
 + <xsl:if test="not(@genre = '')">genre_responsable|<xsl:value-of select="@genre" />$ </xsl:if>
 + <xsl:if test="not(@nom = '')">nom_responsable|<xsl:value-of select="@nom" />$ </xsl:if>
 + <xsl:if test="not(@prenom = '')">prenom_responsable|<xsl:value-of select="@prenom" />$ </xsl:if>
 + </xsl:for-each>
 +
 + <xsl:for-each select="adresses">
 + <xsl:for-each select="adresse">
 + RECORD|adresse$
 +
 + <xsl:if test="not(@rue = '')">adresse|<xsl:value-of select="@rue" />$ </xsl:if>
 + <xsl:if test="not(@code_postal = '')">code_postal|<xsl:value-of select="@code_postal" />$ </xsl:if>
 + <xsl:if test="not(@ville = '')">ville|<xsl:value-of select="@ville" />$ </xsl:if>
 + </xsl:for-each>
 + </xsl:for-each>
 +
 + <xsl:for-each select="tel_fixes">
 + <xsl:for-each select="tel_fixe">
 + RECORD|tel_fixe$
 +
 + tel_fixe|<xsl:value-of select="text()" />$
 + </xsl:for-each>
 + </xsl:for-each>
 +
 + <xsl:for-each select="tel_portables">
 + <xsl:for-each select="tel_portable">
 + <!-- xsl:if test="*[not(*) and not(normalize-space())]" -->
 + RECORD|tel_portable$
 +
 + tel_portable|<xsl:value-of select="text()" />$
 + <!-- /xsl:if -->
 + </xsl:for-each>
 + </xsl:for-each>
 +
 + <xsl:for-each select="e_mails">
 + <xsl:for-each select="e_mail">
 + RECORD|e_mail$
 +
 + e_mail|<xsl:value-of select="text()" />$
 + </xsl:for-each>
 + </xsl:for-each>
 +
 + <xsl:for-each select="activites">
 + <xsl:for-each select="activite"> <!-- si je mets activite[1] ici alors je n'ai que le premier lot -->
 + RECORD|activite$
 +
 + formule|<xsl:if test="not(@formule = '')"><xsl:value-of select="@formule" /></xsl:if>$
 + type|<xsl:if test="not(@type = '')"><xsl:value-of select="@type" /></xsl:if>$
 + musique|<xsl:if test="not(@musique = '')"><xsl:value-of select="@musique" /></xsl:if>$
 + professeur|<xsl:if test="not(@professeur = '')"><xsl:value-of select="@professeur" /></xsl:if>$
 + niveau|<xsl:if test="not(@niveau = '')"><xsl:value-of select="@niveau" /></xsl:if>$
 +
 + <xsl:for-each select="creneau">
 + RECORD|creneau$
 +
 + jour|<xsl:if test="not(@date = '')"><xsl:value-of select="@date" /></xsl:if>$
 + heure|<xsl:if test="not(@heure = '')"><xsl:value-of select="@heure" /></xsl:if>$
 + duree|<xsl:if test="not(@duree = '')"><xsl:value-of select="@duree" /></xsl:if>$
 + salle|<xsl:if test="not(@salle = '')"><xsl:value-of select="@salle" /></xsl:if>$
 + </xsl:for-each>
 +
 + <!-- array explode ( string $delimiter $ string $string [$ int $limit ] ) -->
 +
 + </xsl:for-each>
 + </xsl:for-each>
 +
 + tarif_total|$
 + nb_paiements|$
 + detail_paiement|$
 + date_paiement|$
 +
 + </xsl:for-each>
 +
 +</xsl:template>
 +
 +</xsl:stylesheet>
 +EOT;
 +
 +
 +
 +/*
 +    echo  procXSLstr_dom($xmldom, $xsl_str); // transformToXml;
 +*/
 + // PARSING : LECTURE des données récupérées du FICHIER XML pour récupérer les infos du uid  $xsl_adherent_id
 + $ret = procXSLstr_dom($xmldom, $xsl_str); // transformToXml : Crée une liste de "attribut|valeur$ "
 +
 + if ($ret === FALSE)
 + {
 + echo 'ERROR transformToXml FAILED ! ' . '<br />' . "\r\n";
 + }
 + else
 + {
 + // parse le tableau de "attribut|valeur"
 + $arr_assoc = explode('$', $ret);
 + // print_r($arr_assoc);
 + //////////////////////////////////////////
 + //     INIT COUNTERS
 + //////////////////////////////////////////
 + // RECORD adresse tel_fixe : ignored
 +
 + $b_record_adresse      = false; // 2 is a part of adresse
 + $b_record_tel_fixe     = false;
 + $b_record_tel_portable = false;
 + $b_record_e_mail       = false;
 + $b_record_activite     = false; // = instrument / activite  <--> professeur / niveau
 + $b_record_creneau      = false; // = duree      / tarif     <--> jour / heure / duree / salle
 +
 + $i_record_tel_portable = 0;
 + $i_record_e_mail       = 0;
 + $i_record_activite     = 3; // = instrument / activite  <--> professeur / niveau
 + $i_record_instrument   = 0;
 + $i_record_creneau      = 0; // = duree      / tarif     <--> jour / heure / duree / salle
 + //
 + $last_formule = '';
 + $last_type    = '';
 + //
 + $default_value = array();
 + //
 +
 + foreach ($arr_assoc as &$assoc)
 + {
 + $arr_attr_val = explode('|', $assoc); // pas ':' car heure 17:30
 + $attr = trim($arr_attr_val[0]);
 + $val  = trim($arr_attr_val[1]);
 +
 + if ($attr != '')
 + {
 + if (strcmp($attr, 'RECORD') == 0)
 + {
 + if (strcmp($val, 'adresse') == 0)
 + $b_record_adresse = true;
 + else
 + if (strcmp($val, 'tel_fixe') == 0)
 + $b_record_tel_fixe = true;
 + else
 + if (strcmp($val, 'tel_portable') == 0)
 + $b_record_tel_portable = true;
 + else
 + if (strcmp($val, 'e_mail') == 0)
 + $b_record_e_mail = true;
 + else
 + if (strcmp($val, 'activite') == 0)
 + $b_record_activite = true;
 + else
 + if (strcmp($val, 'creneau') == 0)
 + $b_record_creneau = true;
 +
 + // DEBUG
 + // echo '<b>' . $val . '</b>' . '<br />' . "\r\n";
 + }
 + else
 + {
 + if (strcmp($attr, 'tel_portable') == 0)
 + {
 + if ($b_record_tel_portable)
 + {
 + $i_record_tel_portable++;
 + $b_record_tel_portable = false;
 + }
 +
 + if (strcmp($val, '') == 0)
 +      $i_record_tel_portable--;
 + else
 + {
 + $already = false;
 + for ($i = 1; $i <= 9; $i++)
 + if (isset($default_value[$attr . '_' . $i]))
 + if (strcmp($val, $default_value[$attr . '_' . $i]) == 0)
 + $already = true;
 +
 + if ($already == false)
 + $default_value[$attr . '_' . $i_record_tel_portable] = $val;
 + }
 + }
 + else
 + if (strcmp($attr, 'e_mail') == 0)
 + {
 + if ($b_record_e_mail)
 + {
 + $i_record_e_mail++;
 + $b_record_e_mail = false;
 + }
 +
 + if (strcmp($val, '') == 0)
 +      $i_record_e_mail--;
 + else
 + {
 + $already = false;
 + for ($i = 1; $i <= 9; $i++)
 + if (isset($default_value[$attr . '_' . $i]))
 + if (strcmp($val, $default_value[$attr . '_' . $i]) == 0)
 + $already = true;
 +
 + if ($already == false)
 + $default_value[$attr . '_' . $i_record_e_mail] = $val;
 + }
 +
 + }
 + else
 + if (strcmp($attr, 'formule') == 0)
 + {
 + $last_formule = $val;
 + }
 + else
 + if (strcmp($attr, 'type') == 0)
 + {
 + $last_type = $val;
 + }
 + else
 + if (    (strcmp($attr, 'musique') == 0)
 + || (strcmp($attr, 'professeur') == 0)
 + || (strcmp($attr, 'niveau'    ) == 0)
 + || (strcmp($attr, 'tarif'     ) == 0)
 + || (strcmp($attr, 'salle'     ) == 0)
 + || (strcmp($attr, 'jour'      ) == 0)
 + || (strcmp($attr, 'heure'     ) == 0)
 + || (strcmp($attr, 'duree'     ) == 0) )
 + {
 + // fonction du type
 + if (strcmp($last_type, 'Cours') == 0)
 + {
 + if ($b_record_activite)
 + {
 + $i_record_instrument++;
 + $b_record_activite = false;
 + }
 +
 + // "musique" devient "instrument"
 + if (strcmp($attr, 'musique') == 0)
 +    $attr = 'instrument';
 +
 + $default_value[$attr . '_' . $i_record_instrument] = $val;
 + }
 + else
 + if (strcmp($last_type, 'FM') == 0)
 + {
 + if ($b_record_activite)
 + {
 + // $i_record_activite++;
 + $b_record_activite = false;
 + }
 +
 + // "musique" devient "activite"
 + if (strcmp($attr, 'musique') == 0)
 + {
 +    $attr = 'activite';
 +    $val  = $last_type . ' ' . $val;
 + }
 +
 + $default_value[$attr . '_' . 'fm'] = $val;
 + }
 + else
 + // if (   (strcmp($last_type, 'Atelier') == 0)
 + //     || (strcmp($last_type, 'Danse') == 0)
 + // || (strcmp($last_type, 'Vocal') == 0) )
 + {
 + if ($b_record_activite)
 + {
 + $i_record_activite++;
 + $b_record_activite = false;
 + }
 +
 + // "musique" devient "activite"
 + if (strcmp($attr, 'musique') == 0)
 + {
 +    $attr = 'activite';
 +    $val  = $last_type . ' ' . $val;
 + }
 +
 + $default_value[$attr . '_' . $i_record_activite] = $val;
 + }
 +
 +
 + if (strcmp($val, '') == 0)
 + {
 + // pas de valeur
 + }
 + }
 + else
 + {
 + $default_value[$attr] = $val;
 + }
 +
 + // DEBUG
 + // echo $attr . ' --> ' . $val . '<br />' . "\r\n";
 + }
 + }
 + }
 +/*
 + echo '<b>' . "\r\n";
 + echo '   <pre>' . "\r\n";
 + print_r($default_value);
 + echo '   </pre>' . "\r\n";
 + echo '</p>' . "\r\n";
 + */
 + require_once(dirname(__FILE__) . '/../../statique/util/fpdf/2015-2016_inscriptions/cpdfwiki.php');
 +
 + // Obljet instance de classe CpdfWiki
 + $page = new CpdfWiki();
 +
 + $page->load_default_values($default_value);
 +
 + $page->AddPage(); // init
 + $page->InscriptionTable();
 + $page->Output();  // done
 +
 + }
 +
 +
 +}
 +
 +</php>
 +
 +\\
 +
 +===== Choisir un adhérent =====
 +
 +<php>
 +echo '<form name="f" method="POST" action="' . $_SERVER[REQUEST_URI] . '" enctype="multipart/form-data" style="text-align:left;">' . "\r\n";
 +</php>
 +<html>
 +<select name="id_adherents">
 +</html><php>
 + $xmldom = loadXML_dom(XML_FILEPATH . XML_FILENAME, 'adherents');
 + echo procXSLstr_dom($xmldom, xsl_str__liste_adherents());
 +</php><html>
 +</select>
 +<input type="submit" name="consulter" value="Consulter" />
 +</form>
 +</html>
 +
 +\\
 +\\
  
    Driven by DokuWiki Recent changes RSS feed        
 
 
Nous vous rappelons que vous disposez d'un droit d'accès, de modification, de rectification et de suppression des données qui vous concernent. Pour exercer ce droit, adressez-vous au webmaster .