page.documentation.php 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. require_once(__DIR__.SLASH.'Filter.class.php');
  3. ?>
  4. <h2>Documentation sur les filtres</h2>
  5. <h5 class="pt-2">Assigner une valeur par défaut pour un filtre</h5>
  6. <div id="filterMeta">
  7. <h5>Macros :</h5> Il est possible d'utiliser les mots clés suivants dans le champ <code>Valeur par défaut</code> :
  8. <ul>
  9. <?php foreach(Filter::getMetaTerms() as $key=>$filter): ?>
  10. <li><strong>{{<?php echo $key ?>}}</strong> : <?php echo $filter['description']; ?> ex : <code><?php echo $filter['value']; ?></code></li>
  11. <?php endforeach; ?>
  12. </ul>
  13. </div>
  14. nb : pour les valeurs par defaut de filtres numeriques, il est possible d'ajouter ou enlever un nombre avec la syntaxe <code>{{date.month-1}}</code>
  15. <h5 class="pt-2">Utilisation des filtres dans une requête</h5>
  16. <p>Pour utiliser un filtre dans une requete SQL, Récuperez le <code>slug</code> du filtre et inserez le dans le code SQL délimité par des doubles
  17. accolades,ex : pour le filtre <code>Date début</code> ayant pour slug <code>date-debut</code> ma requete sera <br>
  18. <code>SELECT * FROM matable WHERE date = {{date-debut}}</code>
  19. </p>
  20. <h5 class="pt-2">Utilisation des conditions de filtres dans une requête</h5>
  21. <p>Dans le cas ou le filtre n'est pas remplis par l'utilisateur, il est possible de conditionner la requete avec la syntaxe
  22. <code>{{?monslug}} sql a executer si le filtre est définis {{/monslug}}</code> exemple :
  23. <code>SELECT * FROM matable {{?monslug}}WHERE date = {{date-debut}}{{/monslug}}</code> dans cet exemple la partie <code>WHERE date = {{date-debut}}</code> n'est executée que si le filtre contient au minimum un caractère.
  24. </p>
  25. <h5 class="pt-2">Utilisation des filtres dans un traitement PHP</h5>
  26. Si vous souhaitez utiliser les filtres dans un traitement php, ils sont disponible via la variable <code>$filters</code>.
  27. ex: pour utiliser le filtre <code>Date début</code> ayant pour slug <code>date-debut</code> il faut executer <code>$filters['date-debut']</code>