// 输出表单头函数 function showformheader($action, $extra = '', $name = 'cpform', $method = 'post') // 输出表单尾函数 function showformfooter() // 输出表单项函数,如text radio checkbox等 function showsetting($setname, $varname, $value, $type = 'radio', $disabled = '', $hidden = 0, $comment = '', $extra = '', $setid = '', $nofaq = false) // 输出提交按钮函数 function showsubmit($name = '', $value = 'submit', $before = '', $after = '', $floatright = '', $entersubmit = true) { // 输出表格头和尾,因为表单项是以表格形式输出的,所以需要输出到表格里 function showtableheader($title = '', $classname = '', $extra = '', $titlespan = 15) function showtablefooter()
1. showformheader
- $action 提交的地址,注意这里地址填写的格式,只需要填写url里action=之后的部分就行了,比如我后台某个页面地址是http://dev.nciaer.com/admin.php?action=plugins&operation=config&do=4&identifier=nciaer_a&pmod=admin,那么action变量的值是plugins&operation=config&do=4&identifier=nciaer_a&pmod=admin,这个do是个变量,应该通过$_GET['do']来动态获取
- $extra 额外的参数,如果它的值是enctype,那么生成的表单那会加上enctype="multipart/form-data",其实就是文件上传,如果是其它值则原样输出
- $name 表单的名字和id设置,统一设置
- $method 提交方法,默认是post
2. showformfooter 只是单纯输出form的闭合标签
3. showsubmit 输出提交按钮
- $name 表单的名字
- $value 表单的值,也就是按钮的文字,submit对应的语言包是提交,我们可以改成发布,搜索啥的
4. showsetting 输出各种表单项,这个下面再讲解,内容太多
实例演示
showformheader("plugins&operation=config&do=4&identifier=haozi_chajian&pmod=admin", '', 'myform'); showtableheader(); showsetting('用户uid', 'userid', $uid, 'text', '', 0, '这是里提示信息'); showsetting('单身', 'alone', 0, 'radio', '', 0, '是否单身'); showsubmit('dosubmit', '发布'); showtablefooter(); showformfooter(); // 生成的代码 <form name="myform" method="post" autocomplete="off" action="admin.php?action=plugins&operation=config&do=4&identifier=nciaer_a&pmod=admin" id="myform" > <input type="hidden" name="formhash" value="76f7aae7" /> <input type="hidden" id="formscrolltop" name="scrolltop" value="" /> <input type="hidden" name="anchor" value="" /> <table class="tb tb2 "> <tr> <td colspan="2" class="td27" s="1">用户uid:</td> </tr> <tr class="noborder" onmouseover="setfaq(this, 'faq8465')"> <td class="vtop rowform"> <input name="userid" value="" type="text" class="txt" /> </td> <td class="vtop tips2" s="1">这是里提示信息</td> </tr> <tr> <td colspan="2" class="td27" s="1">单身:</td> </tr> <tr class="noborder" onmouseover="setfaq(this, 'faqfbe3')"> <td class="vtop rowform"> <ul onmouseover="altStyle(this);"> <li> <input class="radio" type="radio" name="alone" value="1" > 是 </li> <li class="checked"> <input class="radio" type="radio" name="alone" value="0" checked> 否 </li> </ul> </td> <td class="vtop tips2" s="1">是否单身</td> </tr> <tr> <td colspan="15"> <div class="fixsel"> <input type="submit" class="btn" id="submit_dosubmit" name="dosubmit" title="按 Enter 键可随时提交您的修改" value="发布" /> </div> </td> </tr> <script type="text/JavaScript">_attachEvent(document.documentElement, 'keydown', function (e) { entersubmit(e, 'dosubmit'); });</script> </table> </form>
最终效果
表单项showsetting详解 $setname 表单上方的标题,如图片里的用户uid $varname 表单的name值 $value 表单的值 $type 表单类型,有text文本框,radio开关,htmltext 有html属性的文本框,filetext文件上传,textarea等 $disabled 是否禁用,值有readonly 只读,disabled 禁用 $hidden 是否隐藏? 不知道干啥的目前 $comment 提示信息,表单右侧的提示信息 $extra 设置额外信息 $setid 设置id?不知道干啥的 $nofaq 记得之前有用,3.4里貌似不管事了 表单类型 1.text 生成一个文本框,还有其它值如password密码框,number数字框 showsetting(‘用户uid’, ‘userid’, $uid, ‘text‘, ”, 0, ‘这是里提示信息’); 2. radio 生成是否的开关两个单选框 showsetting(‘单身’, ‘alone’, 0, ‘radio‘, ”, 0, ‘是否单身’); 3. textarea 文本框 showsetting(‘自我介绍’, ‘intro’, ”, ‘textarea‘, ”, 0, ‘请介绍下自己吧,150字内’); 4. htmltext 带格式控制的文本框 showsetting(‘签名档’, ‘sign’, ”, ‘htmltext’, ”, 0, ‘填写您的签名’); 5. file 文件上传 showsetting(‘上传头像’, ‘avatar’, ”, ‘file’, ”, 0, ‘请选择您的头像’); 6. filetext 文件上传或者文本框,也就是可以上传,也可以填入链接,比如广告图片,可以上传也可以输入远程链接 showsetting(‘上传banner’, ‘banner’, ”, ‘filetext’, ”, 0, ‘请选择您的banner’); 7. select 下拉选择 §education = array( ‘education’, // select的名字 array( // option像 array(‘1’, ‘专科’), array(‘2’, ‘本科’), array(‘3’, ‘研究生’), ) ); showsetting(‘请选择学历’, $education, ‘2’, ‘select’, ”, 0, ‘请选择您的学历’); // 2就是默认的选中项 8. calendar 日历表单 showsetting(‘请选择日期’, ‘date’, ”, ‘calendar’, ”, 0, ‘请选择日期’, 1); // 如果extra值是1,则显示时间,否则不显示 echo ‘<script type=”text/javascript” src=”static/js/calendar.js”></script>’; // 引入日历js文件 9. color 颜色选择框 showsetting(‘请选择颜色’, $color, ‘#ccc’, ‘color’, ”, 0, ‘请选择颜色’);
还没有评论,来说两句吧...