dopiero co zaczynam przygodę z Drupalem więc pewnie pytanie będzie trywialne, ale w jaki sposób można zapisać dane z formularza do bazy danych, a następnie wyświetlić je na innej stronie w zależności od potrzeby?
szukałem na google ale głównie znajduje wyniki jak zainstalować drupala, skonfigurować itd.
function nowe_menu() { 'title' => t('dalej'), 'page callback' => 'drupal_get_form', 'type' => MENU_NORMAL_ITEM, ); return $items; } function dalej_multiform(&$form_state) { $form_state['storage']['step'] = $step + 1; $form = dalej_get_form($step, $form_state['storage']); $button_name = t('Wyślij'); if ($step < 4) { $button_name = t('Następny krok'); } '#type' => 'submit', '#value' => $button_name ); switch($step) { case 2: $form_state['storage']['dalej_1'] = $form_state['values']['dalej_1']; break; case 3: $form_state['storage']['dalej_2'] = $form_state['values']['dalej_2']; break; case 4: $form_state['storage']['dalej_3'] = $form_state['values']['dalej_3']; break; } return $form; } $form = 'dalej_step' . $step . '_form'; return $form($selection); } }
to jest fragment kodu z modułu który stworzyłem, dalej są tylko funkcje z kolejnymi krokami w których są pola typu input. I właśnie z dane z tych pól chciałbym umieścić w DB,nie mam stworzonej żadnej dodatkowej tabeli.
Pozdrawiam
Edit.
po przejrzeniu dokumentacji z API drupala znalazłem rozwiązanie:
function test_myform_submit ( $form , & $form_state ) { db_query ( "INSERT INTO {table} (name, log, hidden) VALUES ('%s', %d, '%s')" , $form_state [ 'values' ][ 'name' ], $form_state [ 'values' ][ 'access' ][ 'log' ], $form_state [ 'values' ][ 'hidden' ]); drupal_set_message ( t ( 'Your form has been saved.' )); }
może komuś się kiedyś przyda
