Fecha nacimiento obligada en la hoja de registro

Started by pedroche, November 22, 2014, 12:31:49 PM

Previous topic - Next topic

pedroche

Hola!
Por favor,  haber si alguien me dice como puedo hacer para que pongan obligatoriamente la fecha de nacimiento en la pagina de registro
Lo tenia en el foro anterior pero ya no me acuerdo como lo hice

Era algo así:
Fecha de Nacimiento*:
Año (AAAA) - Mes (MM) - Día (DD)

He mirado en Campos del perfil, pero no viene esa opcion.

Saludos!

Tokzu

Usa este mod.
http://custom.simplemachines.org/mods/index.php?mod=3680

Y para que lo pida obligatorio haz los siguientes cambios.

En Register.php:
Code (Busca) Select
// By default assume email is hidden, only show it if we tell it to.

Code (Agrega antes) Select
// Handle a string as a birthdate...
if (isset($_POST['birthdate']) && $_POST['birthdate'] != '')
$_POST['birthdate'] = strftime('%Y-%m-%d', strtotime($_POST['birthdate']));
// Or birthdate parts...
elseif (!empty($_POST['bday1']) && !empty($_POST['bday2']) && !empty($_POST['bday3']))
{
$_POST['birthdate'] = sprintf('%04d-%02d-%02d', (int) $_POST['bday3'], (int) $_POST['bday1'], (int) $_POST['bday2']);

// Birthdate Checking!
$arr = explode('-', $_POST['birthdate']); // splitting the array
$mm = $arr[1]; // first element of the array is month
$dd = $arr[2]; // second element is date
$yy = $arr[0]; // third element is year

if(!checkdate($mm, $dd, $yy))
$reg_errors[] = $txt['dob_error2'];

list($yy, $mm, $dd) = explode('-', $_POST['birthdate']);

if (isset($modSettings['coppaAge']) && (date('md') < $mm.$dd ? date('Y')-$yy-1 : date('Y')-$yy) < $modSettings['coppaAge'])
$reg_errors[] = $txt['dob_error3'];
}
else
$reg_errors[] = $txt['dob_error1'];



Y en tu archivo modifications.idioma.php:
Code (Agregar al final) Select
$txt['dob_error1'] = '¡El cumpleaños es un campo requerido!';
$txt['dob_error2'] = 'El cumpleaños que ingresaste no es válido!';
$txt['dob_error3'] = '¡Lo sentimos! Eres demasiado joven.';
"I don't need a knight in a shinny armor, I need a angel in a trench coat"

My mods:

ArgentinaIRC

Hola Tokzu, una pregunta, ¿cómo haces para que salga así esto?:

Código: (Agregar al final) [Seleccionar]

osea, esto más especificamente "(Agregar al final)", ese texto que le sigue a "Código", gracias de antemano!!

Saludos!

Tokzu

"I don't need a knight in a shinny armor, I need a angel in a trench coat"

My mods:

pedroche

Muchisimas gracias Tokzu.

Pues la verdad es que habia encontrado esto:
http://www.smfsimple.com/index.php?topic=5612.0

De todas formas, ami es que los Mod me dan pánico, cada vez que instalo uno tengo problemas, al final casi siempre lo dejo sin instalar

Lo que no se es si el codigo de obligatoriedad de poner la edad valdra para el que he puesto?

Bueno, ya lo mirare.

Saludos!

Tokzu

"I don't need a knight in a shinny armor, I need a angel in a trench coat"

My mods:

ArgentinaIRC

Quote from: Tokzu on November 22, 2014, 05:48:00 PM
Sólo escribe:

[code=texto]código[/code]

;)

Me funcionó perfecto!!!

Muchas gracias por tu ayuda!! :)

pedroche

Quote from: Tokzu on November 22, 2014, 06:22:19 PM
Sí funciona para con ese código.

Hola Toczu!
Perdona pero no funciona muy bien lo de la obligatoriedad. He realizado una prueva sin poner la fecha nacimiento y me sale esto:

Wrong value type sent to the database. Date expected. (birthdate)

Saludos!

Tokzu

Qué raro, debería funcionar. A ver, dices que en tu foro lo tienes a como indica aquí, no¿?

http://www.smfsimple.com/index.php?topic=5612.0
"I don't need a knight in a shinny armor, I need a angel in a trench coat"

My mods:

pedroche

#9
Quote from: Tokzu on November 23, 2014, 06:07:34 PM
Qué raro, debería funcionar. A ver, dices que en tu foro lo tienes a como indica aquí, no¿?

http://www.smfsimple.com/index.php?topic=5612.0

Si, y funcina perfectamente, lo unico que me falla es lo que te he dicho.

A ver, funcionar funciona a medias. Si por ejemplo, no pones la fecha nacimiento no sale esto: ¡El cumpleaños es un campo obligatorio!' ,  Si no que sale una pagina donde indica esto: Wrong value type sent to the database. Date expected. (birthdate)

Y si pones menos de 16 años (lo que tengo puesto en la confi) lo acepta, osea que no funciona, deberia salir: Lo sentimos eres demasiado joven!.
haz la prueva si quiers: http://www.webdelcule.com/foro/index.php?action=register

de todas formas, si yo activo la casilla y pongo una edad minima limite, deberia salir por defecto en el regitsro no?, pero no sale.

Saludos!

Tokzu

"I don't need a knight in a shinny armor, I need a angel in a trench coat"

My mods:

pedroche

Hola Tokzu!

Aver te cuento...
He quitado el que tenia y lo he puesto como tu me has dicho, y ahora no me sale ese error si no pones nada, osea que dice:
La fecha de nacimiento es obligatarioa.

Pero lo que sigue sin funcionar es que si pones la fecha por debajo de los 16 años (es lo que yo tengo) pues no hace caso y lo acepta.

te envio el archivo Register.php ,  Me imagino que sera el de Sources?, bueno claro no hay otro.

Saludos!




Tokzu

#12
Ya lo reviso. Igual podrías adjuntar tu register.template.php¿?

Ya no lo adjuntes, mrevisé tu Register.php y tenía el código repetido, por eso no te funcionaba bien.
"I don't need a knight in a shinny armor, I need a angel in a trench coat"

My mods:

pedroche

Quote from: Tokzu on November 24, 2014, 11:37:12 AM
Ya lo reviso. Igual podrías adjuntar tu register.template.php¿?

Ya no lo adjuntes, mrevisé tu Register.php y tenía el código repetido, por eso no te funcionaba bien.

Perdona Tokzu, estaba repetido antes de que yo te enviara este archivo, por que efetivamente, antes estaba pero yo me di cuenta y lo arregle.
Si te fijas en el que te he enviado ya no esta repetido, esta bien, pero no funciona lo que te he dicho.
A si que por esto no es

Saludos!

Tokzu

Yo lo probé en una instalación nueva de SMF y con la modificación que dijiste tener y sí funciona bien lo de rechazar si están por debajo de la edad necesaria. Así que quizás el problema está en register.template.php o es otra cosa que está interfiriendo. Adjúntame tu register.template.php
"I don't need a knight in a shinny armor, I need a angel in a trench coat"

My mods:

pedroche

Gracias Tokzu por tu tiempo!

En el register.templates he visto que esto esta repetido

// If OpenID is enabled, give the user a choice between password and OpenID.

El Mod que me dijiste lo he puesto por encima del segundo. Sobra alguno?

Bueno, aquí te envio el archivo para que lo veas.

Muchas gracias, soys todos unos Crack

Ya pondre un post sobre todos los que estais para de alguna manera agradecer el exfuerzo que poneis por ayudarnos.

Saludos!

Tokzu

"I don't need a knight in a shinny armor, I need a angel in a trench coat"

My mods:

pedroche

Quote from: Tokzu on November 24, 2014, 02:12:39 PM
Prueba de nuevo
Muchas gracas Tokzu, pero nada, sigue igual.
Definitivamante lo dejo con el que tu me dijiste, al menos obliga a poner la fecha que es lo que mas me interesa

Saludos!

Advertisement: