99re热这里只有精品视频,7777色鬼xxxx欧美色妇,国产成人精品一区二三区在线观看,内射爽无广熟女亚洲,精品人妻av一区二区三区

CakePHP的表單處理

2018-01-18 16:15 更新

CakePHP提供了多種內(nèi)置的標簽用來輕松和安全地處理HTML表單。像許多其他PHP框架一樣,使用CakePHP也可以生成HTML的主要元素。以下是用于生成HTML元素的各種功能。

下面的函數(shù)用于生成select選項。

語法_selectOptions(  array  $elements  array(),  array  $parents  array(), boolean $showParents null, array $attributes array() ) 
參數(shù)說明 -要格式化的元素; -OPTGROUP的父元素;-是否顯示父元素;-HTML屬性
返回類型數(shù)組
說明返回一個格式化的OPTION/OPTGROUP元素的數(shù)組


下面的函數(shù)用于生成HTML select元素 。

語法select( string $fieldName , array $options array() , array $attributes array() )
參數(shù)說明 -SELECT元素的名字屬性;-SELECT元素中所用的OPTION元素的數(shù)組,采用value=>text鍵值對形式;-SELECT元素的HTML屬性
返回類型格式化的SELECT元素
說明返回格式化的SELECT元素


下列功能用于生成 HTML頁面上按鈕 。

語法Button (string $title, array $options array() ) 
參數(shù)說明 -按鈕標題,非自動HTML編碼;-選項和HTML屬性的數(shù)組
返回類型HTML button標簽
說明創(chuàng)建<button>標簽,默認type值為submit,您可以使用$options['type']改變其值


下列功能用于生成 HTML頁面上的復(fù)選框 。

語法Checkbox (string $fieldName, array $options array() ) 
參數(shù)說明 -字段名,如:Modelname.fieldname;-HTML屬性數(shù)組,可選項為value,checked, hiddenField, disabled, default.
返回類型HTML文本輸入框元素
說明創(chuàng)建復(fù)選框輸入控件


以下功能用于創(chuàng)建 HTML頁面上的表單元素 。

語法create( mixed $model null , array $options array() ) 
參數(shù)說明 -所定義的表單的模型名稱,插件模型須包含插件名字,如:ContactManager.Contact。若傳遞一個數(shù)組且$options參數(shù)為空,則數(shù)組會被用作表單選項。如果為false,則沒有模型會被使用。
-一個HTML屬性和選項的數(shù)組,可能值為type, action, url, default, onsubmit,inputDefaults, encoding
返回類型格式化的空白表單標簽
說明返回一個HTML form元素

以下功能用于提供 HTML頁上文件上載功能 。

語法file(string $fieldName, array $options array() ) 
參數(shù)說明 -字段名,在表單中為“Modelname.fieldname“; -HTML屬性數(shù)組
返回類型文件輸入(選擇)框
說明用來創(chuàng)建文件選擇組件


以下功能用于創(chuàng)建HTML頁面上隱藏的元素 。

語法hidden( string $fieldName , array $options array() ) 
參數(shù)說明 -字段名,在表單中為“Modelname.fieldname"; -HTML屬性數(shù)組
返回類型隱藏的輸入域
說明創(chuàng)建一個隱藏的輸入域


下列功能用于生成HTML頁面上輸入元素 。

語法Input (string $fieldName , array $options array() ) 
參數(shù)說明 -此處應(yīng)是“Modelname.fieldname";-每種類型的input元素有不同的選項
返回類型輸入控件
說明生成一個完整的表單輸入控件,包含label和包裹其的div


下列功能用于生成HTML頁面上的單選按鈕 。

語法Radio (string $fieldName , array $options array() , array $attributes array() ) 
參數(shù)說明 -字段名,如“Modelname.fieldname";-單選項數(shù)組;-HTML屬性數(shù)組及其上的特殊屬性;
返回類型單選框控件
說明創(chuàng)建單選控件,會生成一個默認展示區(qū)域,用$options參數(shù)可以控制此展示區(qū)域


下列功能用于生成HTML頁的提交按鈕。

語法Submit (string $caption null, array $options array() ) 
參數(shù)說明 -按鈕上的label或者:如果參數(shù)包含”//"或包含擴展名.JPG, .JPE, .JPEG, .GIF, .PNG,如果存在擴展名則使用圖像文件作為label,且如果第一個字符為"/”則圖像文件路徑相對應(yīng)網(wǎng)站根目錄webroot,如果第一個字符不為“/”則圖像文件路徑相對于webroot/img
 -選項數(shù)組,可能的選項為div,before,after,type等
返回類型HTML提交按鈕
說明創(chuàng)建一個提交按鈕,此方法會生成一個可用于提交/重置表單的<input />元素,可以用$options控制type。如果$caption參數(shù)帶圖像路徑,則會創(chuàng)建一個圖形提交按鈕


下列功能用于生成 HTML頁面上textarea元素 。

語法Textarea (string $fieldName , array $options array() )
參數(shù)說明 -字段名,在表單中為“Modelname.fieldname”; -html屬性數(shù)組,特殊選項如escape;
返回類型文本輸入域
說明創(chuàng)建文本輸入域控件

修改config/routes.php文件如下。

config/routes.php文件

<?php
   use CakeCorePlugin;
   use CakeRoutingRouteBuilder;
   use CakeRoutingRouter;

   Router::defaultRouteClass('DashedRoute');
   Router::scope('/', function (RouteBuilder $routes) {
      $routes->connect('register',['controller'=>'Registrations','action'=>'index']);
      $routes->fallbacks('DashedRoute');
   });
   Plugin::routes();

src/Controller/目錄下創(chuàng)建一個RegistrationController.php文件。復(fù)制以下代碼至其中。

src/Controller/RegistrationController.php

<?php
   namespace AppController;
   use AppControllerAppController;

   class RegistrationsController extends AppController{
      public function index(){
         $country = array('India','United State of America','United Kingdom');
         $this->set('country',$country);
         $gender = array('Male','Female');
         $this->set('gender',$gender);
      }
   }
?>

src/Template目錄下創(chuàng)建一個Registrations目錄,并在該Registrations目錄下創(chuàng)建一個名為index.ctp的視圖文件。復(fù)制以下代碼至其中。

src/Template/Registrations/index.ctp

<?php
   echo $this->Form->create("Registrations",array('url'=>'/register'));
   echo $this->Form->input('username');
   echo $this->Form->input('password');
   echo $this->Form->input('password');
   echo '<label for="country">Country</label>';
   echo $this->Form->select('country',$country);
   echo '<label for="gender">Gender</label>';
   echo $this->Form->radio('gender',$gender);
   echo '<label for="address">Address</label>';
   echo $this->Form->textarea('address');
   echo $this->Form->file('profilepic');
   echo '<div>'.$this->Form->checkbox('terms').
      '<label for="country">Terms &Conditions</label></div>';
   echo $this->Form->button('Submit');
   echo $this->Form->end();
?>

通過訪問以下網(wǎng)址執(zhí)行上面的例子- 

http://localhost:85/CakePHP/register

輸出

執(zhí)行以上程序,你會看到如下頁面。



以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號