国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - xml在joomla表單中的應用詳解分享

xml在joomla表單中的應用詳解分享

2020-01-05 17:20PHP教程網 PHP教程

xml在joomla中應用廣泛,從安裝文件配置到模版,模塊,組件,插件中都有應用

使用起來基本都有固定格式,在此不多說,這里主要說說xml在創建表單中的應用.表單的作用不言而喻,在模塊配置里面有表單,組件里面也有表單,這里的配置里面的參數設置就是xml生成的表單,相對于通過直接建表單方便不少,這里通過編輯文章表單的使用過程來說,在使用之前,我們先來了解一下表單元素的類型,joomla提供了生成多種表單元素樣式. 

復制代碼代碼如下:


<param name="created" type="calendar" label="創建時間" description="時間顯示" /> //生成日歷時間 
<param name="catid" type="category" default="2" label="Category" description="文章分類列表" /> //得到單元列表 
<param name="catid" type="category" section="com_weblinks" default="0" label="Category" description="其他組件分類" /> //其他組件單元列表 
<param name='m1' type='editors' label='編輯' /> //編輯器選擇列表 
<param name='m1' type='filelist' label='編輯' directory='/images' hide_default="1" filter="html"/> //文件列表 html表示顯示擴展名為html 
<param name='m1' type='Folderlist' label='編輯' directory='/images' hide_default="1" filter=""/> //文件夾列表 
<param name='m1' type='Hidden'/> //隱藏域 
<param name="file_name" type="imagelist" directory="/images/stories" filter="" hide_default="1" label="Menu Image" description="圖片列表列表" /> 
<param name="list" type="list" label="select列表" description="select 列表"> 
<option value="">未分類</option> 
<option value="0">中國</option> 
<option value="1">美國</option> 
</param> 
<param name='m1' type='password' label='測試' size='20'/> //密碼 
<param name="cache" type="radio" default="0" label="單選" description="單選按鈕"> //單選 
<option value="0">No</option> 
<option value="1">Yes</option> 
</param> 
<param name="sectionid" type="section" default="0" label="選擇單元" description="單元" /> //單元選擇 
<param type="spacer"/> //水平線 
<param name='m1' type='sql' label='測試' query="select id,title from #__categories" key_field='id' value_field='title' /> //SQL生成列表 
<param name="robots" type="text" size="20" default="10" label="文本框" description="文本框text" /> //文本框 
<param name="keywords" type="textarea" rows="5" cols="90" label="文本域" description="文本域 textarea" /> //文本域無樣式 
<param name="keywords" type="editor" rows="5" cols="90" label="文本域" description="文本域 textarea" /> //文本域有樣式 
<param name='m1' type='Timezones' label='測試' default='8' /> //生成時區列表 


上邊就是提供的一些生成元素,但是如何使用呢,我們首先建立一個form.xml,在組件的models文件夾內 

復制代碼代碼如下:


<?xml version="1.0" encoding="utf-8"?> 
<form> 
<name>表單測試 </name> 
<fieldset name='details'/> 
<params group="html" addpath="/administrator/components/com_category/elements"> 
<param name='m1' type='Hidden'/> 
</params> 
</form> 


這里只有一個隱藏元素其實我們可以建立更多的元素,就是上邊的那些生成元素類型,當然還可以自定義,這里的addpath就是自定義元素類型,位置就是在組建的elements文件夾內,上邊的是內置的,筆者在這里定義了如下類型 

復制代碼代碼如下:


<param name='custom' type='custom' label='自定義'> //自定義控件 
<param name='arr' type='arr' label='數組' arr="array(1=>'中國',2=>'美國')"/>//數組轉換成列表 不寫下標從0開始 
<param name='radios' type='radios' label='是否單選'> //生成是否單選 
<param name='arr' type='upload' label='數組' size='20'/>//上傳控件 
<param name='arr' type='checkbox' label='數組' arr="array('1'=>'中國','2'=>'美國')"/>//數組復選 
<param name='type' type='type' label='無線分類' />//無限分類 注意添加section父類為0 


使用方法如上,元素的自定義文件在下載里面提供.接著我們在views文件夾下面你的視圖文件夾內的view.html.php增加如下語句 

復制代碼代碼如下:


$form = new JParameter('',JPATH_COMPONENT.DS.'models'.DS.'form.xml'); 
$form->set('m1','默認值'); 
$html=$form->render('details', 'html'); //details是元素名數組 
$this->assignRef('html',$html); 


上邊第二句就是賦值,把隱藏域賦值,相當于編輯里面取值,第三四句是把表單html輸出到模版,details是元素名稱數組名,生成的m1的name就是details[m1],接著就是form.php調用如下 

復制代碼代碼如下:


<form action="index.php" method="post" name="adminForm"> 
<fieldset class="adminform"><legend>詳情</legend> 
<?php 
echo $this->html; 
?> 
<?php echo JHTML::_( 'form.token' ); ?> 
</fieldset> 
</form> 


這樣一個表單就生成了,相對于直接寫表單元素,這種方法更容易修改風格或者內容,修改只需要改xml文件即可,在joomla2.5版本中,基本上都是通過這種方式實現的,不過變化比較大,xml文件寫法大不相同,通過xml是可以調用其他組件里面表單元素的. 

表單元素的這些類型在模版配置參數,模塊參數都是可以使用的,特別是可以自己擴展表單元素的樣式,你完全可以定義出其他樣式類型,筆者定義了比較常用的幾種但是內置沒有提供的,比如數組轉換列表,數組轉換復選,無限分類等樣式.這里的類型其實就是api的JElement類,里面的源文件可以參考libraries\joomla\html\parameter\element,這里自定義表單元素怎么寫呢這里給個例子或者參考源文件就明白了,文件名custom.php,類型也就是custom了,調用方法<param name='custom' type='custom' label='自定義' /> 

復制代碼代碼如下:


<?php 
// 自定義顯示 
// 
defined('_JEXEC') or die('Restricted access'); 

class JElementCustom extends JElement{ 
var $_name = 'Custom'; 
function fetchElement($name, $value, &$node, $control_name) { 
$html=<<<EOF 
自定義 
EOF; 
return $html; 


好了,就不多講了,其實這只是一種建立表單的方法,如果你不喜歡,完全可以使用寫表單元素,不過既然joomla提供了這些我們為什么不用呢? 
下載自定義元素: elements.rar

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 国产一区免费 | 国产精品一区二区不卡 | 视频在线一区二区 | 女人爽到高潮aaaa电影 | 亚洲视频欧洲视频 | 欧美黄在线观看 | 亚洲国产成人精品女人久久 | 成人黄色网| 国产精品国产 | 国产精品免费高清 | 日韩精品中文字幕在线 | 福利在线小视频 | 亚洲免费人成在线视频观看 | 欧美日韩精品一区二区在线观看 | 精品在线一区二区三区 | 国产精品美女久久久久久免费 | 国产精品国产三级国产aⅴ中文 | 欧美日韩精品免费 | 91精品国产综合久久久久久丝袜 | 一呦二呦三呦国产精品 | 亚洲国产精品久久久久秋霞不卡 | 欧美日韩久久久久 | 老女肥熟av免费观看 | 日韩成人免费 | 久久99er6热线精品首页蜜臀 | 精品国产黄a∨片高清在线 欧美一级免费 | 久草 在线 | 亚洲国产精品成人女人久久久 | 久久久久久综合 | av一区在线观看 | 日本不卡免费一区二区三区综合久久 | 久久成人精品 | 蜜臀精品久久久久久蜜臀 | 国产专区在线 | 国产精品久久久久久久久久免费动 | 国产精品a久久久久 | 国产精品美女久久久久久久网站 | 成人在线视频免费观看 | 天天干夜夜弄 | 麻豆91在线观看 | 91久久国产综合久久 |