El 7/02/08, dandreta <[EMAIL PROTECTED]> escribió: > > Hola!! > Tengo un campo de texto: > $form->text('Fecha'); > y quiero poder introducir la fecha en formato dia-mes-año. > ¿Como puedo hacer para que al ejecutar el save en el controlador > convierta la fecha al formato adecuado de MySql(año-mes-dia)? > y cuando obtengo un registro de la base de datos ¿como puedo hacer > para que en mi vista la fecha aparezca en formato dia-mes-año y no en > el formato año-mes-dia de Mysql?
en tu modelo podrias agregar los siguientes callbacks: /* * callback ejecutado antes de $this->tuModelo->save(datos); * se modifica fecha a formato MySQL -> YYYY-MM-DD */ function beforeSave() { if (isset($this->data['tuModelo']['fecha'])) { $paso = explode('/', $this->data['tuModelo']['fecha']); $fecha_aux[] = $paso[2]; $fecha_aux[] = $paso[1]; $fecha_aux[] = $paso[0]; $this->data['tuModelo']['fecha'] = implode('-', $fecha_aux); unset($paso); unset($fecha_aux); } return true; } /* * callback ejecutado despues de $this->tuModelo->find*(); y $this->tuModelo->read(); * se modifica fecha de formato YYYY-MM-DD (MySQL) a formato DD/MM/YYYY */ function afterFind($datos) { foreach ($datos as $key => $val) { if ( isset($val['tuModelo']['fecha']) ) { $paso = explode("-", $val['tuModelo']['fecha']); $datos[$key]['tuModelo']['fecha'] = $paso[2]."/".$paso[1]."/".$paso[0]; unset($paso); } } return $datos; } -- Ricardo Mun~oz A. --~--~---------~--~----~------------~-------~--~----~ Has recibido este mensaje porque estás suscrito a Grupo "CakePHP-es" de Grupos de Google. Si quieres publicar en este grupo, envía un mensaje de correo electrónico a CakePHP-es@googlegroups.com Para anular la suscripción a este grupo, envía un mensaje a [EMAIL PROTECTED] Para obtener más opciones, visita este grupo en http://groups.google.com/group/CakePHP-es?hl=es. -~----------~----~----~----~------~----~------~--~---