I'm trying to create a block for display content but I'm getting this error:
user warning: Column 'nid' in field list is ambiguous query: SELECT nid, title FROM node nd LEFT JOIN content_type_efemerides cte ON ( nd.nid = cte.nid ) WHERE type = '0' AND field_efemerides_fecha_value = '1' in D:\Webserver\htdocs\intranet\sites\all\modules\efemerides_form\efemerides_form.module on line 12.
Line 12 have this code:
8 $today = getdate();
9 $type = "efemerides";
10
11 $query = "SELECT nid, title FROM {node} nd LEFT JOIN {content_type_efemerides} cte ON ( nd.nid = cte.nid ) WHERE type = '%d' AND field_efemerides_fecha_value = '%d'";
12 $query_result = db_query($query, $type, $today);
The nid
in your select statement is ambiguous (as the error message states), you just need to qualify it with a table alias:
$query = "SELECT nd.nid, nd.title FROM {node} nd LEFT JOIN {content_type_efemerides} cte ON ( nd.nid = cte.nid ) WHERE type = '%s' AND field_efemerides_fecha_value = '%s'";
Also string replacements should be done using %s
instead of %d
(%d
being for decimals)