¿Alguien puede aclararme qué sucede con esta consulta?

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
yemore's picture

A ver si alguien puede ver el problema porque yo no lo visualizo. Estoy tratando de añadir municipios que se relacionan con una provincia ya creada con anterioridad. Luego de verificar que el municipio no está en el sistema localizo el id de la provincia y creo el nuevo municipio con estos datos (id_provincia y nombre del municipio).

if ($existe == FALSE){
$id_provincia = db_query('SELECT id_provincia FROM {provincia} WHERE nom_provincia = :nom_provincia' , array(':nom_provincia' => $provincia));
$datos = array('id_provincia' => $id_provincia , 'nom_municipio' => $municipio);
drupal_write_record('municipio' , $datos);
drupal_set_message('El municipio ha sido añadido al sistema.');
}

A la hora de almacenarlo lo hace pero siempre colocando como id de la provincia el número 1 sin importar cual seleccione y me muestra este error:

Notice: Object of class DatabaseStatementBase could not be converted to int in drupal_write_record() (line 7123 of C:\wamp\www\recursos_humanos\includes\common.inc).

Aparentemente el problema viene a la hora de hacer la consulta, que debe devolver el único entero con que se trabaja.

AttachmentSize
tablas.png3.87 KB

Comments

db_query te retorna un

mnico's picture

db_query te retorna un objeto, puedes ver la documentación aquí https://api.drupal.org/api/drupal/includes%21database%21database.inc/fun...
En los comentarios ponen ejemplos que te van a servir.
por ejemplo:

<?php
// Agregar el metodo fetchField();
$id_provincia = db_query('SELECT id_provincia FROM {provincia} WHERE nom_provincia = :nom_provincia' , array(':nom_provincia' => $provincia))->fetchField();

// Recomiendo ver si $id_provincia realmente es el valor que necesitas.
print_r($id_provincia);

?>

Saludos

Muchas gracias.

yemore's picture

Gracias. Aparte del fetchField() tenía también un problema a la hora de tomar la información del select.

Argentina

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: