1

Je viens de rédiger 2 classes, une première pour faire des formulaires simplement et une seconde pour les checker (quelques fonction de base). Je n'ai pas commenté le code, mais vous devriez vous y retrouver. Valà.
class Formulaire {           function Declaration($pointage="",$methode="",$encodage="text/plain",$nom="") {                echo "<form enctype=\"".$encodage."\"";                if(!empty($pointage)) {                     echo " action=\"".$pointage."\"";                }                if(!empty($methode)) {                     echo " method=\"".$methode."\"";                }                if(!empty($nom)) {                     echo " name=\"".$nom."\"";                }                echo ">";           }                      function Cloture() {                echo "</form>";           }           function ChampsText($variable,$valeur="",$taille="",$maximum="",$classe="") {                echo "<input type=\"text\" name=\"".$variable."\"";                if(!empty($taille)) {                     echo " size=\"".$taille."\"";                }                if(!empty($valeur)) {                     echo " value=\"".$valeur."\"";                }                if(!empty($maximum)) {                     echo " maxlength=\"".$maximum."\"";                }                if(!empty($classe)) {                     echo " class=\"".$classe."\"";                }                echo ">";           }           function ChampsPass($variable,$valeur="",$taille="",$maximum="",$classe="") {                echo "<input type=\"password\" name=\"".$variable."\"";                if(!empty($taille)) {                     echo " size=\"".$taille."\"";                }                if(!empty($valeur)) {                     echo " value=\"".$valeur."\"";                }                if(!empty($maximum)) {                     echo " maxlength=\"".$maximum."\"";                }                if(!empty($classe)) {                     echo " class=\"".$classe."\"";                }                echo ">";           }           function ChampsTextarea($variable,$taillex="",$tailley="",$contenu="",$classe="") {                echo "<textarea";                echo " name=\"".$variable."\"";                if(!empty($taillex)) {                     echo " cols=\"".$taillex."\"";                }                if(!empty($tailley)) {                     echo " rows=\"".$tailley."\"";                }                echo ">";                echo $contenu;                echo "</textarea>";           }                      function CaseRadio($variable,$checked=false,$classe="") {                echo "<input type=\"radio\"";                echo " name=\"".$variable."\"";                if(!empty($classe)) {                     echo " class=\"".$classe."\"";                }                if($checked==true) {                     echo " checked";                }                echo ">";           }                      function CaseCocher($variable,$checked=false,$classe="") {                echo "<input type=\"checkbox\"";                echo " name=\"".$variable."\"";                if(!empty($classe)) {                     echo " class=\"".$classe."\"";                }                if($checked==true) {                     echo " checked";                }                echo ">";           }                      function Liste($variable,$tab_lib,$tab_vals,$selected="",$classe="",$classoption="") {                echo "<select name=\"".$variable."\"";                if(!empty($classe)) {                     echo " class=\"".$classe."\"";                }                echo ">";                $nblignes=count($tab_vals);                for($i=1 ; $i<=$nblignes ; $i++) {                     echo "<option value=\"".$tab_vals[$i-1]."\"";                     if(!empty($classoption)) {                          echo " class=\"".$classoption."\"";                     }                     if($tab_vals[$i-1]===$selected) echo " selected";                     echo ">".$tab_lib[$i-1]."</option>";                }                echo "</select>";           }                      function ListeMultiple($variable,$tab_lib,$tab_vals,$selected="",$hauteur="",$classe="",$classoption="") {                echo "<select name=\"".$variable."\"";                if(!empty($hauteur)) {                     echo " size=\"".$hauteur."\"";                }                if(!empty($classe)) {                     echo " class=\"".$classe."\"";                }                echo ">";                $nblignes=count($tab_vals);                for($i=1 ; $i<=$nblignes ; $i++) {                     echo "<option value=\"".$tab_vals[$i-1]."\"";                     if(!empty($classoption)) {                          echo " class=\"".$classoption."\"";                     }                     if($tab_vals[$i-1]===$selected) echo " selected";                     echo ">".$tab_lib[$i-1]."</option>";                }                echo "</select>";           }                      function Bouton($valeur="",$type="submit",$classe="") {                echo "<input type=\"".$type."\"";                if(!empty($valeur)) {                     echo " value=\"".$valeur."\"";                }                if(!empty($classe)) {                     echo " class=\"".$classe."\"";                }                echo ">";           }                      function Image($source,$alt="",$classe="") {                echo "<input type=\"image\" src=\"".$source."\"";                if(!empty($alt)) {                     echo " alt=\"".$alt."\"";                }                if(!empty($classe)) {                     echo " class=\"".$classe."\"";                }                echo ">";           }                      function Fichier($variable,$classe) {                echo "<input type=\"file\" name=\"".$variable."\"";                if(!empty($classe)) {                     echo "class=\"".$classe."\"";                }                echo ">";           }      }

ET
class VeriForm {           function Longueur($chaine,$longueur) { // Minimum : '5-' Maximum : '-10' Entre : '5-10' Exact : '6-6'                $erreur=0;                $dimens=explode("-",$longueur);                if($dimens[0]!="") {                     if(strlen($chaine)<$dimens[0]) $erreur++;                }                if($dimens[1]!="") {                     if(strlen($chaine)>$dimens[1]) $erreur++;                }                if($erreur==0) {                     return true;                } else {                     return false;                }           }                      function Alpha($chaine) {                if(eregi("^([a-z])+",$chaine) && !eregi("[0-9]",$chaine)) {                     return true;                } else {                     return false;                }           }                      function Num($chaine) {                if(eregi("^([0-9])+",$chaine) && !eregi("[a-z]",$chaine) && !eregi(" ",$chaine)) {                     return true;                } else {                     return false;                }           }                      function SansEspace($chaine) {                if(!eregi(" ",$chaine)) {                     return true;                } else {                     return false;                }           }                      function Alphanum($chaine) {                if(eregi("^([a-z0-9])+",$chaine)) {                     return true;                } else {                     return false;                }           }                      function VDate($chaine) {                if (eregi("^([0-9]{1,2})-([0-9]{1,2})-([0-9]{4})", $chaine)) {                     return true;                } else {                     return false;                }           }           function Semblable($chaine1,$chaine2,$precis=false) {                if($precis==false) {                     if(strtolower($chaine1)==strtolower($chaine2)) {                          return true;                     } else {                          return false;                     }                } else {                     if($chaine1==$chaine2) {                          return true;                     } else {                          return false;                     }                }           }           function Email($adresse,$VerifMX=false) {                $erreur=0;                if(!(eregi("^[_a-zA-Z-]+[\._a-z0-9A-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$", $adresse, $tab_m) && !strstr($adresse,".@"))) $erreur++;                if($VerifMX==true) {                     if(function_exists("checkdnsrr")) {                          if(!checkdnsrr(array_pop(explode("@",$adresse)),"MX")) $erreur++; // Si nous sommes sous Linux, cette fonction est appellée                     } else {                          if(!($this->monCheckDNSRR(array_pop(explode("@",$adresse)),"MX")))     $erreur++; // Sinon on appelle ma version Windows                     }                }                if($erreur==0) {                     return true;                } else {                     return false;                }           }           function monCheckDNSRR($hostName, $recType = '') { // Version Windows de checkdnsrr                if(!empty($hostName)) {                     if( $recType == '' ) $recType = "MX";                          exec("nslookup -type=$recType $hostName", $result);                          foreach ($result as $line) {                               if(eregi("^$hostName",$line)) { return true;                          }                     }                     return false;                }                return false;           }           function FichType($fichier,$type) {                if(is_array($type)) {                     if(in_array($fichier['type'],$type)) {                          return true;                     } else {                          return false;                     }                } else {                     if($fichier['type']==$type) {                          return true;                     } else {                          return false;                     }                }           }           function FichTaille($fichier,$taillemax=1000000) { // 1 Mo maxi par défaut                if($fichier['size']>$taillemax) {                     return false;                } else {                     return true;                }           }                      function Vide($variable) {                if(empty($variable)) {                     return true;                } else {                     return false;                }           }      }
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo

2

Ah, on peut pas mettre 2 sources...

La seconde :
class VeriForm {           function Longueur($chaine,$longueur) { // Minimum : '5-' Maximum : '-10' Entre : '5-10' Exact : '6-6'                $erreur=0;                $dimens=explode("-",$longueur);                if($dimens[0]!="") {                     if(strlen($chaine)<$dimens[0]) $erreur++;                }                if($dimens[1]!="") {                     if(strlen($chaine)>$dimens[1]) $erreur++;                }                if($erreur==0) {                     return true;                } else {                     return false;                }           }                      function Alpha($chaine) {                if(eregi("^([a-z])+",$chaine) && !eregi("[0-9]",$chaine)) {                     return true;                } else {                     return false;                }           }                      function Num($chaine) {                if(eregi("^([0-9])+",$chaine) && !eregi("[a-z]",$chaine) && !eregi(" ",$chaine)) {                     return true;                } else {                     return false;                }           }                      function SansEspace($chaine) {                if(!eregi(" ",$chaine)) {                     return true;                } else {                     return false;                }           }                      function Alphanum($chaine) {                if(eregi("^([a-z0-9])+",$chaine)) {                     return true;                } else {                     return false;                }           }                      function VDate($chaine) {                if (eregi("^([0-9]{1,2})-([0-9]{1,2})-([0-9]{4})", $chaine)) {                     return true;                } else {                     return false;                }           }           function Semblable($chaine1,$chaine2,$precis=false) {                if($precis==false) {                     if(strtolower($chaine1)==strtolower($chaine2)) {                          return true;                     } else {                          return false;                     }                } else {                     if($chaine1==$chaine2) {                          return true;                     } else {                          return false;                     }                }           }           function Email($adresse,$VerifMX=false) {                $erreur=0;                if(!(eregi("^[_a-zA-Z-]+[\._a-z0-9A-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$", $adresse, $tab_m) && !strstr($adresse,".@"))) $erreur++;                if($VerifMX==true) {                     if(function_exists("checkdnsrr")) {                          if(!checkdnsrr(array_pop(explode("@",$adresse)),"MX")) $erreur++; // Si nous sommes sous Linux, cette fonction est appellée                     } else {                          if(!($this->monCheckDNSRR(array_pop(explode("@",$adresse)),"MX")))     $erreur++; // Sinon on appelle ma version Windows                     }                }                if($erreur==0) {                     return true;                } else {                     return false;                }           }           function monCheckDNSRR($hostName, $recType = '') { // Version Windows de checkdnsrr                if(!empty($hostName)) {                     if( $recType == '' ) $recType = "MX";                          exec("nslookup -type=$recType $hostName", $result);                          foreach ($result as $line) {                               if(eregi("^$hostName",$line)) { return true;                          }                     }                     return false;                }                return false;           }           function FichType($fichier,$type) {                if(is_array($type)) {                     if(in_array($fichier['type'],$type)) {                          return true;                     } else {                          return false;                     }                } else {                     if($fichier['type']==$type) {                          return true;                     } else {                          return false;                     }                }           }           function FichTaille($fichier,$taillemax=1000000) { // 1 Mo maxi par défaut                if($fichier['size']>$taillemax) {                     return false;                } else {                     return true;                }           }                      function Vide($variable) {                if(empty($variable)) {                     return true;                } else {                     return false;                }           }      }
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo

3

Oué, mais tu check apres rechargement de la page...
A mon avis, pour faire ca, un javascript est quand même mieux

4

nEUrOO :
Oué, mais tu check apres rechargement de la page...
A mon avis, pour faire ca, un javascript est quand même mieux

Pas fiable, car côté client.
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo

5

C'est bien de faire les deux en fait. Côté client parce que c'est plus agréable d'avoir la réponse tout de suite, sans nécessité de rechargr la page, et côté serveur au cas où la verif côté client est désactivée ou outrpassée.
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

6

Oué, perso j'ai développé ça, mais y'a aussi du javascript pour que la personne n'oublie pas de saisir certains champs obligatoires.
avatar
Slammeur (qu'on voit danser, le long des golfes clairs).
Mon blog qui parle de jeux-vidéo