Como hacer que el username sea solo Numerico

Como hacer que el username sea solo Numerico

de Joel Castán -
Número de respuestas: 8
Hola a todos, tengo un problema, me pidieron desarrollar o modificar el registro de nuevos usuarios basados en email, me pidieron que los usuarios nuevos solo puedan introducir su matricula es decir solo numeros sin ningun otro caracter, si alguna persona sabe como hacer o que modificar para hacer la validacion, porfavor me diga. tengo moodle 1.9

bien les agradesco y buen dia
Promedio de valoraciones: -
En respuesta a Joel Castán

Re: Como hacer que el username sea solo Numerico

de Iñaki Arenaza -
Imagen de Desarrolladores Imagen de Desarrolladores de plugins Imagen de Documentadores Imagen de Moderadores Imagen de Moodlers de gran ayuda

Tendrás que editar el fichero login/signup_form.php, y en la función validation(), y antes de llamar a la función validate_email (alrededor de la línea 116), tendrás que aplicar al comprobación de que se trate de un número de matrícula lo que el usuario ha tecleado en el campo $data['username'] (y generar el error correspondiente si no es así).

Saludos. Iñaki.

En respuesta a Iñaki Arenaza

Como hacer que el username sea solo Numerico

de Joel Castán -
Hola Iñaki Arenaza.

Gracias por tu ayuda.

Ya solucione el problema, me puse a investigar las quickforms y vi que añadiendo una nuva rule se puede hacer la validacion, lo que hice fue poner la sig linea, despues de crear el texbox username;

$mform->addRule('username', 'Introduce Solo Numeros', 'numeric', null, 'client');

esta instruccion lo que hace es checar si lo que hay en username es un numero, si no es manda el mensaje.

No se si sea la mejor forma de hacerlo, pero por el momento funciona muy bien.

Gracias por sus respuestas, sigan asi.
En respuesta a Joel Castán

Re: Como hacer que el username sea solo Numerico

de Rossana Bracho -
Hola por fa quisiera en detalle que modificaste para que solo te aceptara numeros ese campo y lo mismo para solo letras, la idea es q yo quiero que solo acepte letras en el campo nombre he intentado varias funciones que he colocado en login_sinup_form, me urge ya tengo todo listo y me falta validar eso, estoy proxima a presentar mi trabajo de grado. gracias de antemano en lo que me puedas ayudar
En respuesta a Rossana Bracho

Re: Como hacer que el username sea solo Numerico

de Joel Castán -

Hola  Rossana Bracho,

Lo unico que hice fue modificar el archivo "signup_form.php" que esta dentro de la carpeta login, en las lineas 14-16 se crea el cuadro de texto donde el usuario introduce su username, lo que hice fue agregar la linea "$mform->addRule('username', 'Introduce Solo Numeros', 'numeric', null, 'client');" en lo que seria la linea 17, para que se hiciera la validacion de lo que el usuario introduce, en cuanto se hace el cambio al sig. cuadro de texto,

si lo que quieres es que se validen solo letras, lo que tendrias que poner seria algo parecido a esto "$mform->addRule('username', 'Mensaje de error; ejemplo Introduce solo letras', 'lettersonly', null, 'client');" bueno espero te sirva de algo esto.

En respuesta a Joel Castán

Re: Como hacer que el username sea solo Numerico

de Rossana Bracho -
Hola, hice lo que me dijiste pero en mi caso yo quiero validar que en firstname solo se introduzca letras:

$mform->addElement('text', 'firstname', get_string('firstname'), 'size="25"');
$mform->setType('firstname', PARAM_TEXT);
$mform->addRule('firstname', get_string('missingfirstname'), 'required', null, 'client');
$mform->addRule('firstname', 'Introduce solo letras', 'lettersonly', null, 'client'); esta fue la línea que agregue pero sigue permitiendo que el nombre lleve números :s, si sabes de alguna configuración que se necesita o si estoy haciendo algo mal por fa avisame, me urge hacer eso la verdad q si. Gracias

En respuesta a Rossana Bracho

Re: Como hacer que el username sea solo Numerico

de David Monllaó -
Buenas Rossana,

parece que estás editando el código del campo 'firstname', que es el nombre del usuario, deberías editar el campo 'username'

En respuesta a David Monllaó

Re: Como hacer que el username sea solo Numerico

de Rossana Bracho -
Si eso es precisamente lo que qiero editar el hecho es si la línea de código funciona para username deberia funcionar para firstname, yo igual lo probe con username y no me funciono