[РЕШЕНО]хочу создать страницу с Таблицей, а сверху над таблицей Форма с сабмит. Недопонимание - как?. код внутри

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

Аватар пользователя andr-ok andr-ok 31 июля 2013 в 10:10

/////////////////////////////////////описываю страницу
function printStatistic_menu() {
$items['statistic'] = array(
'title' => t('Статистика'),
'page callback' => 'main_table',
'access callback' => 'user_is_logged_in',
);
return $items;
}

////////////////////////////////////описываю таблицу
function main_table() {
/* ........код создающий строки и header......*/

return theme('table', array('header' => $header, 'rows'=> $rows));

}

Теперь хочу добавить на той же страницt statistic сверху над таблицей добавить textfield и submit. Как это сделать?
ведь для это function main_table() должна вернуть массив Form. Но функция уже вернула таблицу

Комментарии

Аватар пользователя Frantsuzzz Frantsuzzz 31 июля 2013 в 11:01

Делаете форму.
Потом
////////////////////////////////////описываю таблицу
function main_table() {
//загружаем форму
$f=drupal_get_form($form_id);
$output.=drupal_render($f);
/* ........код создающий строки и header......*/
$output.=theme('table', array('header' => $header, 'rows'=> $rows));

return $output;
}

Примерно так...

Аватар пользователя andr-ok andr-ok 31 июля 2013 в 11:14

Как-то так?

function my_first_form($form, &$form_state){
        $form=array();
        $form['name'] = array(
                '#type' => 'textfield',
                '#title' => t('Название поля'),
                '#default_value' => t('Текст по умолчанию'),
        );
       
        $form['submit'] = array(
                '#type' => 'submit',
                '#value' => t('Submit'),
        );
        return $form;
}

////////////////////////////////////описываю таблицу
function main_table() {
//загружаем форму
$f=drupal_get_form('my_first_form');
$output.=drupal_render($f);
/* ........код создающий строки и header......*/
$output.=theme('table', array('header' => $header, 'rows'=> $rows));
return $output;
}