I created a basic view with a few fields and filters. I then exposed 2 of the filters.

Everything works fine until I use the exposed filters to filter were I know the view will return nothing. The "empty text" setting does show but I get this error:

* warning: Invalid argument supplied for foreach() in /var/www/drupal_prod/sites/all/modules/views/includes/handlers.inc on line 539.
* user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ) AS count_alias' at line 11 query: SELECT COUNT(*) FROM (SELECT node.nid AS nid, node.title AS node_title, node.type AS node_type, node_data_field_knowledge_level.field_knowledge_level_value AS node_data_field_knowledge_level_field_knowledge_level_value, node_data_field_knowledge_level.nid AS node_data_field_knowledge_level_nid, node.uid AS node_uid, node_revisions.format AS node_revisions_format FROM node node LEFT JOIN content_field_knowledge_level node_data_field_knowledge_level ON node.vid = node_data_field_knowledge_level.vid LEFT JOIN LE_node_revisions node_revisions ON node.vid = node_revisions.vid WHERE (node.status <> 0) AND (node.type in ('apps')) AND () ) AS count_alias in /var/www/drupal_prod/sites/all/modules/views/includes/view.inc on line 652.
* user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') LIMIT 0, 25' at line 11 query: SELECT node.nid AS nid, node.title AS node_title, node.type AS node_type, node_data_field_knowledge_level.field_knowledge_level_value AS node_data_field_knowledge_level_field_knowledge_level_value, node_data_field_knowledge_level.nid AS node_data_field_knowledge_level_nid, node.uid AS node_uid, node_revisions.format AS node_revisions_format FROM LE_node node LEFT JOIN LE_content_field_knowledge_level node_data_field_knowledge_level ON node.vid = node_data_field_knowledge_level.vid LEFT JOIN LE_node_revisions node_revisions ON node.vid = node_revisions.vid WHERE (node.status <> 0) AND (node.type in ('apps')) AND () LIMIT 0, 25 in /var/www/drupal_prod/sites/all/modules/views/includes/view.inc on line 677.

Granted, the view still works and I can disable error printing to the screen, but I thought I would see if this is a real problem.

Comments

bsherwood’s picture

Opps, I was cleaning the "personalization" of the error by removing personal information you can disregard 'LE_' as it was my table prefix.

Here is the actual query generated from views:

SELECT node.nid AS nid,
node.title AS node_title,
node.type AS node_type,
node_data_field_knowledge_level.field_knowledge_level_value AS node_data_field_knowledge_level_field_knowledge_level_value,
node_data_field_knowledge_level.nid AS node_data_field_knowledge_level_nid,
node.uid AS node_uid,
node_revisions.format AS node_revisions_format
FROM node node
LEFT JOIN content_field_knowledge_level node_data_field_knowledge_level ON node.vid = node_data_field_knowledge_level.vid
LEFT JOIN node_revisions node_revisions ON node.vid = node_revisions.vid
WHERE (node.status <> 0) AND (node.type in ('apps')) AND ()

merlinofchaos’s picture

What filter is doing this? Looks like there is a bug in that specific filter or set of filters.

bsherwood’s picture

The filters are from CCK fields via new filter > Group: Content > Content: Knowledge Level (created text CCK field)

Here is the view if that helps at all:

$view = new view;
$view->name = 'apps';
$view->description = 'List of Applications';
$view->tag = 'apps';
$view->view_php = '';
$view->base_table = 'node';
$view->is_cacheable = FALSE;
$view->api_version = 2;
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
$handler = $view->new_display('default', 'Defaults', 'default');
$handler->override_option('fields', array(
'title' => array(
'label' => 'Title',
'link_to_node' => 1,
'exclude' => 0,
'id' => 'title',
'table' => 'node',
'field' => 'title',
'relationship' => 'none',
),
'field_knowledge_level_value' => array(
'label' => '',
'link_to_node' => 0,
'label_type' => 'widget',
'format' => 'default',
'multiple' => array(
'group' => TRUE,
'multiple_number' => '',
'multiple_from' => '',
'multiple_reversed' => FALSE,
),
'exclude' => 0,
'id' => 'field_knowledge_level_value',
'table' => 'node_data_field_knowledge_level',
'field' => 'field_knowledge_level_value',
'relationship' => 'none',
),
'field_ui_value' => array(
'label' => '',
'link_to_node' => 0,
'label_type' => 'widget',
'format' => 'default',
'multiple' => array(
'group' => 1,
'multiple_number' => '',
'multiple_from' => '',
'multiple_reversed' => 0,
),
'exclude' => 0,
'id' => 'field_ui_value',
'table' => 'node_data_field_ui',
'field' => 'field_ui_value',
'relationship' => 'none',
),
'edit_node' => array(
'label' => 'Contribute!',
'text' => '',
'exclude' => 0,
'id' => 'edit_node',
'table' => 'node',
'field' => 'edit_node',
'override' => array(
'button' => 'Override',
),
'relationship' => 'none',
),
));
$handler->override_option('filters', array(
'status' => array(
'operator' => '=',
'value' => 1,
'group' => '0',
'exposed' => FALSE,
'expose' => array(
'operator' => FALSE,
'label' => '',
),
'id' => 'status',
'table' => 'node',
'field' => 'status',
'relationship' => 'none',
),
'type' => array(
'operator' => 'in',
'value' => array(
'apps' => 'apps',
),
'group' => '0',
'exposed' => FALSE,
'expose' => array(
'operator' => FALSE,
'label' => '',
),
'id' => 'type',
'table' => 'node',
'field' => 'type',
'override' => array(
'button' => 'Override',
),
'relationship' => 'none',
),
'field_knowledge_level_value' => array(
'operator' => 'and',
'value' => array(),
'group' => '0',
'exposed' => TRUE,
'expose' => array(
'use_operator' => 0,
'operator' => 'field_knowledge_level_value_op',
'identifier' => 'field_knowledge_level_value',
'label' => 'Knowledge Level',
'optional' => 1,
'single' => 1,
'remember' => 1,
'reduce' => 0,
),
'id' => 'field_knowledge_level_value',
'table' => 'node_data_field_knowledge_level',
'field' => 'field_knowledge_level_value',
'relationship' => 'none',
'reduce_duplicates' => 0,
),
));
$handler->override_option('access', array(
'type' => 'none',
'role' => array(),
'perm' => '',
));
$handler->override_option('title', 'Software');
$handler->override_option('header', 'Here you can search through all of the applications we have in our database.');
$handler->override_option('header_format', '1');
$handler->override_option('empty', 'Whoops! Nothing to show, try expanding your search.');
$handler->override_option('empty_format', '1');
$handler->override_option('items_per_page', 25);
$handler->override_option('use_pager', '1');
$handler->override_option('style_plugin', 'table');
$handler = $view->new_display('page', 'Page', 'page_1');
$handler->override_option('path', 'apps');
$handler->override_option('menu', array(
'type' => 'normal',
'title' => 'Software',
'weight' => '0',
));
$handler->override_option('tab_options', array(
'type' => 'none',
'title' => '',
'weight' => 0,
));

bsherwood’s picture

Any news on if this is a bug or me mis-configuring my site?

merlinofchaos’s picture

Project: Views (for Drupal 7) » Content Construction Kit (CCK)
Component: Code » Views Integration

If it's a CCK filter let's see if this is CCK specific.

yched’s picture

Then I'd need to see an exported definition of your field_knowledge_level CCK field.
Note : please paste the code inside tags, its well preserve indentation and make it easier to read

I also need to know which version of cck you're running.

bsherwood’s picture

Because of the error, I was having a hard time building the site without getting an error. So I decided to build the site in 5.x instead.

It was a single select drop down box, with the allowed values:

1|End User
2|Power User
3|System Administrator
4|Programmer

karens’s picture

Status: Active » Fixed

I don't know if it's since fixed or something particular to your site, but I can create a numeric field with a list of allowed values and expose it and select a value with no problem.

Since there's no way to re-create this now, marking it fixed.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.