Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » Drupal »

Fallo en mi primer módulo

Estas en el tema de Fallo en mi primer módulo en el foro de Drupal en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 19/01/2016, 07:52
Avatar de agusax  
Fecha de Ingreso: junio-2011
Ubicación: Puerto Real (Cádiz)
Mensajes: 74
Antigüedad: 12 años, 10 meses
Puntos: 3
Fallo en mi primer módulo

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. }
__________________
"Nunca confíes en un ordenador que no puedas lanzar por una ventana" -- Steve Wozniak
"El software es como el sexo: mejor si es libre y gratis" -- Linus Torvalds
  #2 (permalink)  
Antiguo 24/05/2016, 14:05
(Desactivado)
 
Fecha de Ingreso: septiembre-2008
Mensajes: 269
Antigüedad: 15 años, 7 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

Etiquetas: fallo, primer
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:33.