Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/05/2016, 14:05
jeremiselxi
(Desactivado)
 
Fecha de Ingreso: septiembre-2008
Mensajes: 269
Antigüedad: 16 años, 2 meses
Puntos: 22
Respuesta: Fallo en mi primer módulo

Cita:
Iniciado por agusax Ver Mensaje
Hola chic@s
Estoy trasteando un poco Drupal y me ha dado por hacer un pequeño módulo simple que calcule cuantos días faltan para el cumpleaños de un usuario.

Me he descargado el módulo Date, para añadir al formulario de registro un campo (desplegable) para que introduzcan su cumpleaños.

La cosa es que la fecha no se guarda en la misma tabla de user, por lo que realizo un select normal y corriente, pero me genera varios errores.

¿Podrían echarme un cable? Gracias

bithday.module
Código PHP:
Ver original
  1. function birthday_menu() {
  2. $items['birthday/notification'] = array(
  3. 'title' => 'Birthday',
  4. 'page callback' => 'birthday_notification',
  5. 'access callback' => TRUE,
  6. );
  7. return $items;
  8. }
  9.  
  10. function calcular(){
  11.     return "calculo"; //aun no calculo los días que faltan, porque no me funciona la primera parte.
  12. }
  13.  
  14. function birthday_notification() {
  15.     global $user;
  16.     $account= user_load($user->uid); //load user
  17.     $query= "SELECT field_birthday_value FROM {field_data_field_birthday} WHERE entity_id = $user->uid";
  18.     $results = db_query($query);
  19.     foreach($results as $res)
  20.     if($res === date("Y-m-d"){
  21.         return "Happy Birthday";
  22.     }else{
  23.         return calcular();
  24.     }
  25.  
  26. }
Hola agusax.

Lo que estoy viendo a simple vista es que en esta parte hay 3 símbolos de igual donde debería llevar 2.
Código PHP:
Ver original
  1. if($res === date("Y-m-d"){

Por otro lado, entiendo que no es necesario utilizar
Código PHP:
Ver original
  1. $account= user_load($user->uid); //load user
ya que ya estas obteniendo el id del usuario cuando haces esto:

Código PHP:
Ver original
  1. global $user;
  2.         $user->uid;

Has las correcciones y nos dejas saber.
Saludos.

Última edición por jeremiselxi; 24/05/2016 a las 14:20