首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

from表单的简略练习

2013-10-27 
from表单的简单练习function my_form_menu() {$items[my/%/product] array(title myproduct,p

from表单的简单练习
function my_form_menu() { $items['my/%/product'] = array( 'title' => 'myproduct', 'page callback' = > 'productlist', 'page arguments' => array(1), ); return $items;}function productlist($arg){ $form = array(); $form = drupal_get_form('my_form'); if (!empty($arg) { # code... if ($arg="all") { # code... $form+=drupal_get_from('all_product'); // } }//公用一个submit $form['submit'] = array( '#type' => 'submit', '#value' => 'Submit', '#validate' => array('my_form_validate'), '#submit' => array('my_form_submit'), ); return $form;}function my_form($form,&$form_state){$form_default_values = variable_get('my_form','');$default_value = array(); if(!empty($form_default_values)) { print_r("expression"); foreach ($form_default_values as $key => $value) { $default_value[$key] = isset($form_state['values'][$key]) ? $form_state['values'][$key] : (isset($form_default_values[$key]) ? $form_default_values[$key] : ''); } }$form['name'] = array( '#type' => 'textfield', '#title' => t('name'), '#description' => t('name must !!'), '#default_value'=> isset($default_value['name']) ? $default_value['name'] : '', '#required' => TRUE, ); $form['cardtype'] = array( '#type' => 'checkboxes', '#options' => array( 'sfz' => t('Shenfengzheng'), 'psc' => t('huzhao'), ), '#title' => t('cardtype'), '#default_value'=> isset($default_value['cardtype']) ? $default_value['cardtype'] : '', ); $form['shenfenzheng'] = array( '#type' => 'textfield', '#title' => t('shengfenzheng'), '#states' => array( 'visible' => array( // action to take. ':input[name="cardtype[sfz]"]' => array('checked'=> TRUE),//当上级类型是checkboxes 时,这边用checked(true/false), ), ), '#default_value'=>isset($default_value['shenfenzheng']) ? $default_value['shenfenzheng'] : '', ); $form['psc'] = array( '#type' => 'textfield', '#title' => t('huzhao'), '#states' => array( 'visible' => array( // action to take. ':input[name="cardtype[psc]"]' => array('checked' => TRUE),//当上级类型是checkboxes 时,这边用checked (true/false), ), ), '#default_value'=>isset($default_value['psc']) ? $default_value['psc'] : '', ); $form['sextype'] = array( '#type' => 'radios', '#options' => array( 'man' => t('man'), 'woman' => t('woman'), ), '#title' => t('sex'), '#default_value'=>isset($default_value['sextype']) ? $default_value['sextype'] : '', ); $form['man'] = array( '#type' => 'fieldset', '#title' => t('man'), '#states' => array( 'visible' => array( // action to take. ':input[name="sextype"]' => array('value' => 'man'), ), ), ); // High school information. $form['man']['dianying'] = array( '#type' => 'textfield', '#title' => t('dianying'), '#states' => array( 'visible' => array( // action to take. ':input[name="sextype"]' => array('value' => 'man'), ), ), '#default_value'=>isset($default_value['dianying']) ? $default_value['dianying'] : '', ); $form['man']['yundong'] = array( '#type' => 'checkboxes', '#options' => array( 'zq' => t('zuqiu'), 'lq' => t('lanqiu'), ), '#title' => t('yundong'), '#states' => array( 'visible' => array( // action to take. ':input[name="sextype"]' => array('value' => 'man'), ), ), '#default_value'=>isset($default_value['yundong']) ? $default_value['yundong'] : '', ); $form['woman'] = array( '#type' => 'fieldset', '#title' => t('woman'), '#states' => array( 'visible' => array( // action to take. ':input[name="sextype"]' => array('value' => 'woman'), ), ), ); //#field_prefix, #field_suffix $form['woman']['huaxiao'] = array( '#type' => 'select', '#options' => (array(t('500'), t('1000'),t('5000'))), '#field_suffix'=>'元', '#title' => t('woman'), '#states' => array( 'visible' => array( // action to take. ':input[name="sextype"]' => array('value' => 'woman'), ), ), '#default_value'=>isset($default_value['huaxiao']) ? $default_value['huaxiao'] : '', ); $form['woman']['lixiang'] = array( '#type' => 'textarea', '#title' => t('lixiang'), '#states' => array( 'visible' => array( // action to take. ':input[name="sextype"]' => array('value' => 'woman'), ), ), '#default_value'=>isset($default_value['lixiang']) ? $default_value['lixiang'] : '', );//表单元素提交图片按钮 $form['image_submit'] = array( '#type' => 'image_button', //图片按钮特有的#src属性, '#src' => drupal_get_path('module','contactus').'/images/button1-1.jpg', '#executes_submit_callback' => true, //提交时是否执行回调函数,(false不执行,true执行) //使用这个按钮提交时,对应的提交处理函数为contactus_confirm_form_back '#submit' => array('contactus_confirm_form_back'), //表单元素添加两个属性,onmouseout、onmouseover,为了在鼠标移到按钮上时,显示不同的图片效果 '#attributes' =>array( 'onmouseout' => "this.src='".base_path().drupal_get_path('module','mytest')."/images/button1-1.jpg'", 'onmouseover' => "this.src='".base_path().drupal_get_path('module','mytest')."/images/button1-2.jpg'", ), //为了便于控制image_button的外观,我们使用#prefix、#suffix为其添加了一个带有ID的div '#prefix' => '<div id="image-submit">', '#suffix' => '</div>', ); return $form;}/** * 返回按钮对应的提交函数 */function contactus_confirm_form_back($form, &$form_state){ //简单的重定向到首页 $form_state['redirect'] = '<front>';}function my_form_validate($form, &$form_state) { dpm($form_state); $sfz=$form_state['values']['shenfenzheng']; $psc=$form_state['values']['psc']; $cardtype=$form_state['values']['cardtype']; if($cardtype['psc']==0) { $psc=''; } if($cardtype['sfz']==0) { $sfz=''; } }function my_form_submit($form, &$form_state) { $myform = array( 'name'=>$form_state['values']['name'], 'cardtye'=>$form_state['values']['cardtype'] , 'shenfenzheng'=>$form_state['values']['shenfenzheng'], 'dianying'=>$form_state['values']['dianying'], 'psc'=>$form_state['values']['psc'], 'sextype'=>$form_state['values']['sextype'], 'yundong'=>$form_state['values']['yundong'], 'huaxiao'=>$form_state['values']['huaxiao'], 'lixiang'=>$form_state['values']['lixiang'], ); variable_set('my_form',$myform);}

?

热点排行