Проблемы вывода данных из БД в таблицу tableselect

Главные вкладки

Аватар пользователя alex.gamma alex.gamma 6 февраля 2013 в 15:48

Друпал юзаю первую неделю, нужна помощь. При создании первого модуля столкнулся с проблемой вывода из бд. При использовании tablesecect пишет записей нет, хотя в БД есть значения.

<?php
function world_m_menu() {
  $items['form'] = array(
    'title' => 'Редактор синонима слов',
    'page callback' => 'drupal_get_form',
    'page arguments' => array('world_m_my_form'),
    'access callback' => TRUE,
    'type' => MENU_NORMAL_ITEM
 //'access arguments' => array('access content'),
  // 'type' => MENU_CALLBACK,  

);
// dpm('000');
  return $items;
}
function world_m_my_form($form, &$form_state) {
 $form['word1'] = array(
    '#type' => 'textfield',
    '#title' => t('Add Word'),
  );
 
  $form['add'] = array(

    '#type' => 'submit',

    '#value' => t('Add'), '#submit' => array('world_m_form_submit')

  );
  $form['word2'] = array(
    '#type' => 'textfield',
    '#title' => t('Search word'),
  );
 
   $form['search'] = array(
    '#type' => 'submit',
    '#value' => t('Search'),'#submit' => array('world_m_form_submit2')

  );
 $form['vivod'] = array(
    '#type' => 'submit',
    '#value' => t('vivod'),'#submit' => array('world_m_show_table')

  );
 
  return $form;
}
function world_m_form_submit($form, &$form_state) {

 $text = $form_state['values']['word1'];  
 $id = db_insert('swords')->fields(array(  
    'word' => $text,
))->execute();
    drupal_set_message('Сообщение отправлено');
}
function mymodule_form_validate($form, &$form_state) {
  if( !$form_state['values']['word1'] )
       drupal_set_message('ошибка');
}

function world_m_show_table($form, &$form_state)
{
$header = array(
  array('data' => t('Идентификатор'),     'field' => 'id'),
  array('data' => t('Слово'), 'field' => 'word'),
);

$items = db_select('swords', 's')
  ->fields('s', array('id', 'word'))
  ->extend('PagerDefault')
  ->limit(10)
  ->extend('TableSort')
  ->orderByHeader($header)
  ->execute()
  ->fetchAll();

      $options = array();
       foreach($items as $item)
        {
          $options[] = array(
       'id' => $item->id,
       'word' => $item->word ,
);}
dpm($items);
$form['table'] = array(
    '#theme' => 'tableselect',
    '#header' => $header,
    '#options' => $options,
    '#empty' => t('No content available.'),
     );
 
//dpm($form);
return $form;
}