J'ai un bouton PayPal avec un champ de texte de quantité. Comment pourrais-je vérifier pour m'assurer que ce champ de texte est > 0 afin qu'il n'ajoute pas au panier si la quantité n'est pas un entier >= 1?
Réponses
Trop de publicités?Les paniers Paypal sont suffisamment intelligents pour ne pas comptabiliser les commandes négatives. Mais vous pouvez également fournir une certaine logique en javascript à votre côté client qui empêcherait l'action de se dérouler si la valeur est inférieure à 1.
Un peu de Javascript/jQuery en exemple:
$("submit").click(function(e){
var qty = $(this).closest("form").find("[name='qty']").val();
if (qty < 1) {
e.preventDefault();
}
});
Pour cela, j'utilise normalement :
if ( isset($_POST['quantity'])
&& preg_match('/^[1-9]\d*$/', $_POST['quantity'] ) {
}
le premier test permet de ne pas déclencher d'erreur si la quantity
n'est pas dans le tableau $_POST
. Le second garantit que la chaîne ne contient que des chiffres et que le premier n'est pas zéro.