Hola de nuevo, como veo que nadie es capaz de echarme una mano con esto, al final lo he resuelto (chapuceramente) de la siguiente forma:
La parte del cliente, en JQuery, con el plugin JQuery Validate:
Código Javascript
:
Ver original$.validator.addMethod("validarPixelFacebook", function(value, element) {
var p = /^([0-9]{15})$/;
return (value.match(p)) ? RegExp.$1 : false;
}, "Introduce un código de píxel válido");
//Validar el envío del formulario de contacto
$("#formulario").validate({
//Reglas de validación
rules: {
pixel_facebook: { required: true, number: true, minlength: 15, maxlength: 15, validarPixelFacebook: true },
}, //Fin reglas de validación
//Mensajes de error
messages: {
'pixel_facebook': { required: 'Debes completar el código de tu píxel de Facebook', number: 'El código del píxel de Facebook solo admite números', minlength: 'El código del píxel de Facebook debe tener 15 caracteres numéricos', maxlength: 'El código del píxel de Facebook debe tener 15 caracteres numéricos', validarPixelFacebook: 'El código del píxel de Facebook debe tener 15 caracteres numéricos' }
}
}); //Fin de la validación del formulario
Y la parte del servidor, de forma muy similar:
Código PHP:
Ver originalfunction validarFacebook($facebook) {
return ( ! preg_match("/^([0-9]{15})$/", $facebook)) ?
FALSE : TRUE; }
if ( validarFacebook($facebook)==FALSE ) {
//Muestro mensaje de error
echo '<h3 style="color: #C00; text-align: center;">El código introducido no es válido.</h3>';
} elseif ( validarFacebook($facebook)==TRUE ) {
//Proceso las acciones necesarias y muestro mensaje de éxito
//......
}
Sé que no es la forma más eficiente de hacerlo porque lo mejor sería poder validar que realmente exista, que esté en vigor, etc. no se me ocurren más cosas que validar, pero sé que hay más, pero como no sé cómo hacerlo, aquí dejo este código para quien le pueda servir...