baser/views/helpers/form_ex.php
/**
 * Creates a hidden input field.
 *
 * @param string $fieldName Name of a field, in the form"Modelname.fieldname"
 * @param array $options Array of HTML attributes.
 * @return string
 * @access public
 */
Creates a hidden input field.
@param string $fieldName Name of a field, in the form"Modelname.fieldname"
@param array $options Array of HTML attributes.
@return string
@access public
Creates a hidden input field . @param string $fieldName Name of a field in the form " Modelname . fieldname " @param array $options Array of HTML attributes . @return string @access public
function hidden($fieldName, $options = array()) {
		$secure = true;
		if (isset($options['secure'])) {
			$secure = $options['secure'];
			unset($options['secure']);
		}
		if(!empty($options['multiple'])){
			$secure = false;
			$this->__secure();
		}
		$options = $this->_initInputField($fieldName, array_merge(
			$options, array('secure' => false)
		));
		$model = $this->model();
		if ($fieldName !== '_method' && $model !== '_Token' && $secure) {
			$this->__secure(null, '' . $options['value']);
		}
		$multiple = false;
		$value = '';
		if(!empty($options['multiple'])){
			$multiple = true;
			$tagType = 'hiddenmultiple';
			$options['id'] = null;
			if (!isset($options['value'])) {
				$value = $this->value($fieldName);
			}else {
				$value = $options['value'];
			}
			if(is_array($value) && !$value) {
				unset($options['value']);
			}
			unset($options['multiple']);
		} else {
			$tagType = 'hidden';
		}
		if($multiple && is_array($value)) {
			$out = array();
			foreach($value as $_value) {
				$options['value'] = $_value;
				$out[] = $this->output(sprintf(
					$this->Html->tags[$tagType],
					$options['name'],
					$this->_parseAttributes($options, array('name'), '', ' ')
				));
			}
			return implode("\n", $out);
		} else {
			return $this->output(sprintf(
				$this->Html->tags[$tagType],
				$options['name'],
				$this->_parseAttributes($options, array('name'), '', ' ')
			));
		}
	}
function hidden ( $ fieldName , $ options = array ( ) ) { $ secure = true ; if ( isset ( $ options [ 'secure' ] ) ) { $ secure = $ options [ 'secure' ] ; unset ( $ options [ 'secure' ] ) ; } if ( ! empty ( $ options [ 'multiple' ] ) ) { $ secure = false ; $ this -> __secure ( ) ; } $ options = $ this -> _initInputField ( $ fieldName , array_merge ( $ options , array ( 'secure' => false ) ) ) ; $ model = $ this -> model ( ) ; if ( $ fieldName !== '_method' && $ model !== '_Token' && $ secure ) { $ this -> __secure ( null , '' . $ options [ 'value' ] ) ; } $ multiple = false ; $ value = '' ; if ( ! empty ( $ options [ 'multiple' ] ) ) { $ multiple = true ; $ tagType = 'hiddenmultiple' ; $ options [ 'id' ] = null ; if ( ! isset ( $ options [ 'value' ] ) ) { $ value = $ this -> value ( $ fieldName ) ; } else { $ value = $ options [ 'value' ] ; } if ( is_array ( $ value ) && ! $ value ) { unset ( $ options [ 'value' ] ) ; } unset ( $ options [ 'multiple' ] ) ; } else { $ tagType = 'hidden' ; } if ( $ multiple && is_array ( $ value ) ) { $ out = array ( ) ; foreach ( $ value as $ _value ) { $ options [ 'value' ] = $ _value ; $ out [ ] = $ this -> output ( sprintf ( $ this -> Html -> tags [ $ tagType ] , $ options [ 'name' ] , $ this -> _parseAttributes ( $ options , array ( 'name' ) , '' , ' ' ) ) ) ; } return implode ( " \n " , $ out ) ; } else { return $ this -> output ( sprintf ( $ this -> Html -> tags [ $ tagType ] , $ options [ 'name' ] , $ this -> _parseAttributes ( $ options , array ( 'name' ) , '' , ' ' ) ) ) ; } }
Creates a hidden input field.
Creates a hidden input field .
// 2010/07/24 ryuring // セキュリティコンポーネントのトークン生成の仕様として、 // ・hiddenタグ以外はフィールド情報のみ // ・hiddenタグはフィールド情報と値 // をキーとして生成するようになっている。 // その場合、生成の元のなる値は、multipleを想定されておらず、先頭の値のみとなるが // multiple な hiddenタグの場合、送信される値は配列で送信されるので値違いで認証がとおらない。 // という事で、multiple の場合は、あくまでhiddenタグ以外のようにフィールド情報のみを // トークンのキーとする事で認証を通すようにする。 // >>> ADD // <<< // CUSTOMIZE 2010/07/24 ryuring // 配列用のhiddenタグを出力できるオプションを追加 // CUSTOMIZE 2010/08/01 ryuring // class属性を指定できるようにした // CUSTOMIZE 2011/03/11 ryuring // multiple で送信する値が配列の添字となっていたので配列の値に変更した // >>> ADD // <<< // >>> MODIFY /*return $this->output(sprintf(
		$this->Html->tags['hidden'],
			$options['name'],
			$this->_parseAttributes($options, array('name', 'class'), '', ' ')
		));*/ // --- // <<<