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

codeur:fonction [2007/03/17 17:49]
tito getuserinfo
codeur:fonction [2007/08/14 17:31] (Version actuelle)
delennege
Ligne 1: Ligne 1:
 ====== Quelques fonctions utiles ====== ====== Quelques fonctions utiles ======
 +{{message>ébauche}}
 NPDS propose bien entendu des dizaines de fonctions. Voici une liste des fonctions les plus utiles. NPDS propose bien entendu des dizaines de fonctions. Voici une liste des fonctions les plus utiles.
  
-===== removeHack(str) ===== + 
-Cette fonction supprime les tentatives de piratage dans la chaine que vous lui soumettezIl est conseillé de faire passer toutes les chaines que les utilisateurs peuvent modifier (formulaires, cookie) dans cette fonction.+===== autorisation(int) ===== 
 +Retourne ''true'' ou ''false'' selon les droits d'accès du visiteur. 
 + 
 +Dans certains codes, il peut être très intéressant de limiter l'accès à certaines personnes, ou d'afficher un contenu différent. NPDS permet différents niveaux de protection : anonyme, membre, administrateur ou membre d'un groupe 
 + 
 +Voici la liste des nombres que vous pouvez mettre en paramètre. 
 +^ Nombre ^ autorisation() retourne true si... ^ 
 +^  -127  | le visiteur est administrateur | 
 +^  -1  | le visiteur est anonyme (et n'est pas membre
 +^  1  | le visiteur est membre | 
 +^  > 1  | le visiteur est membre du groupe ayant l'ID indiqué | 
 +^  0  | inutile donc indispensable : retourne true dans tous les cas |
  
 **Exemple** **Exemple**
 <code php><?php <code php><?php
 include('header.php'); include('header.php');
-$chaine = 'Je suis un vilain pirate qui va mettre du +if(autorisation(-127)) { //Admin 
-    javascript pour pouvoir pirater tous les gentils +  echo 'Vous êtes administrateur<br />'; 
-    visiteurs ignorants! +} 
-    <script type=&quot;text/javascript">alert('Haha!');</script>'+if(autorisation(1)) { //Membre 
-echo removeHack($chaine);+  echo 'Vous êtes membre du site <br /&gt;'; 
 +
 +if(autorisation(-1)) { //Anonyme 
 +  echo "Vous êtes anonyme<br />"; 
 +
 +if(autorisation(10)) { //Membre du groupe d'ID 10 
 +  echo ";Vous êtes membre du groupe d'ID 10<br />"
 +
 +if(autorisation(0)) { //Tous 
 +  echo ";Vous faites partie d'une réalité où 1=1. Félicitations! ;-)<br />"; 
 +}
 include('footer.php'); include('footer.php');
 ?></code> ?></code>
  
-Ceci mettra des ! autour de jascript: 
-<code xml>Je suis un vilain pirate qui va mettre du !javascript! pour pouvoir pirater tous les gentils visiteurs ignorants! 
-<script type="text/!javascript!">alert('Haha!');</script></code> 
  
 +===== get_userdata(pseudo) et get_userdata_from_id(id) =====
 +Retourne les informations de l'utilisateur ''user'' ou d'id ''id'' sous forme de tableau associatif.
 +
 +**Astuce:** vous pouvez récupérer le pseudo du visiteur grâce à la varibale ''$cookie[1]''.
 +
 +**Exemple:** <code php>$user = get_userdata_from_id($cookie[0]);
 +echo $user["email"];</code>
 +Affiche l'e-mail du visiteur.
  
 ===== send_email(...) ===== ===== send_email(...) =====
-Cette fonction permet d'envoyer un e-mail. Contrairement à la simple [[http://php.net/manual/fr/function.mail.php|fonction mail]], send_email respecte les paramètres de NPDS (par exemple le choix de la fonction mail ou email).+Envoie un e-mail. Contrairement à la simple [[http://php.net/manual/fr/function.mail.php|fonction mail]], send_email respecte les paramètres de NPDS (par exemple le choix de la fonction mail ou email).
  
 Les paramètres sont: Les paramètres sont:
Ligne 37: Ligne 64:
 <code php>send_email('toto@mail.com', 'Sujet', 'Message', 'Webmaster<webmaster@mail.com>', '3', 'text');</code> <code php>send_email('toto@mail.com', 'Sujet', 'Message', 'Webmaster<webmaster@mail.com>', '3', 'text');</code>
  
-===== getuserinfo(user) ===== +===== Filtres ===== 
-''getuserinfo(user)'' retourne les informations de l'utilisateur //user// sous forme de tableau associatif.+==== removeHack(str==== 
 +Supprime les tentatives de piratage dans la chaine que vous lui soumettez. Il est conseillé de faire passer toutes les chaines que les utilisateurs peuvent modifier (formulaires, cookie) dans cette fonction.
  
-**Astuce:** vous pouvez récupérer le pseudo du visiteur grâce à la varibale ''$cookie[1]''.+**Exemple** 
 +<code php>$chaine = 'Je suis un vilain pirate qui va mettre du 
 +    javascript pour pouvoir pirater tous les gentils 
 +    visiteurs ignorants! 
 +    <script type="text/javascript">alert('Haha!');</script>'
 +echo removeHack($chaine);</code>
  
-**Exemple:** <code php>$user getuserinfo($cookie[3]); +Ceci mettra des ! autour de jascript: 
-echo $user["email"];</code> +<code xml>Je suis un vilain pirate qui va mettre du !javascript! pour pouvoir pirater tous les gentils visiteurs ignorants! 
-Affiche l'e-mail du visiteur.+<script type="text/!javascript!">alert('Haha!');</script></code> 
 + 
 +==== FixQuotes(str) et delQuotes(str) ==== 
 +FixQuotes retourne la chaîne str, après avoir échappé tous les caractères qui doivent l'être, pour être utilisée dans une requête de base de données. Ces caractères sont les guillemets simples ('), guillemets doubles ("), anti-slashes (\) et NULL. 
 + 
 +delQuotes supprime l'effet de FixQuotes. 
 + 
 +**Exemple:** <code php>$chaine "J'ai faim"; 
 +$chaine = FixQuotes($chaine); 
 +echo $chaine.'<br />'; 
 +$chaine = delQuotes($chaine); 
 +echo $chaine; 
 +</code> 
 +Affichera <code>J\'ai faim 
 +J'ai faim</code> 
 + 
 +==== check_html(str[,strip]) ==== 
 +Supprime tout ou une partie des tags HTML d'une chaine. 
 + 
 +Si **strip** est défini à "**nohtml**", tous les tags HTML seront supprimés. S'il est différent ou non défini, les seuls tags qui resteront sont ceux définis par la variable ''$AllowableHTML'' de votre fichier config.php. 
 + 
 +**Exemple:** <code php>$chaine = 'Voici un mot en <b>gras</b> et un en <i>italique</i>'
 +echo check_html($chaine, "nohtml");</code> 
 +Affichera <code>Voici un mot en gras et un en italique</code> 
 + 
 +==== check_words(str) ==== 
 +Censure les mots interdits par la variable ''$CensorList'' 
 + 
 +**Exemple:** <code php>$chaine = "I've a big cock"; 
 +echo check_words($chaine);</code> 
 +Affichera <code>I've a big ****</code> 
 + 
 + 
 +//Cette fonction devrait évoluée (notamment avec les meta-mot) mais elle restera pour assurer la compatibilité// 
 + 
 +==== filter_text(str[,strip]) ==== 
 +Englobe check_html et check_words : revient à faire check_words(check_html(str[,strip])). 
 + 
 +**Exemple:** <code php>$chaine = "I've a <b>big</b> cock"; 
 +echo filter_text($chaine, "nohtml");</code> 
 +Affichera <code>I've a big ****</code>

Index


Utilisateur

Vous n'ètes pas identifié. Vous pouvez vous inscrire ou vous connecter.



Page