Introduction
Ce plugin est un outil de dévelopement. Il propose une API basée sur une fonction centrale verifier($valeur, $type, $options)
permettant de vérifier qu’une valeur correspond à un critère.
Pour cela, l’API se base sur le même principe d’extension que la fonction autoriser()
de SPIP : on peut écrire autant de fonctions qu’on veut, qui définissent un « type » de vérification particulier.
Retours
La fonction retourne une chaîne vide si la vérification se passe bien. Et retourne une chaîne expliquant l’erreur si ce n’est pas concluant.
On peut donc utiliser le retour de cette fonction directement comme information dans la fonction verifier()
d’un formulaire CVT.
Montrez moi le code !
// On charge la fonction centrale
$verifier = charger_fonction('verifier', 'inc/');
// On l'utilise
$verifier($valeur, $type_de_test, $options_enventuelles);
// Concrètement
$valeur_test = 50;
$erreur = $verifier($valeur_test, 'entier'); // C'est bon ! $erreur = ""
$erreur = $verifier($valeur_test, 'entier', array('min'=>100)); // C'est pas bon ! $erreur = "Une explication de l'erreur"
Quelles sont les possibilités ?
Vous trouverez la liste des vérifications actuellement disponibles par ici : Références des vérifications.
Ajouter des vérifications
Pour ajouter une vérification, il faut écrire un fichier verifier/truc.php
avec dedans une fonction verifier_truc_dist($valeur, $options=array())
et retourner une chaîne vide ou non, comme décrit précédemment.
function verifier_truc_dist($valeur, $options=array()){
// Je fais des tests et c'est bon
if ($valeur == 'ok')
return '';
// Et si c'est pas bon
else
// J'explique pourquoi
return _T('une_explication');
}
Utilisation auto-magique avec le plugin Saisies
Lorsqu’on décrit une liste de saisies sous forme de tableau normalisé, il est possible de déclarer une vérification à faire pour une saisie. On peut alors passer la liste entière dans la fonction saisies_verifier($saisies)
et... magie !
$saisies = array(
array(
'saisie' => 'input',
'options' => array(
'nom' => 'test',
'label' => 'Un nombre entre 100 et 500',
'obligatoire' => 'oui'
),
'verifier' => array(
'type' => 'entier',
'options' => array(
'min' => 100,
'max' => 500
)
)
),
);
include_spip('inc/saisies');
$erreurs = saisies_verifier($saisies); // Et hop pour le verifier() de CVT !
Aucune discussion
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |