Last active
March 3, 2017 09:51
-
-
Save YuzuruSano/49f7c53e7d146957ef3d to your computer and use it in GitHub Desktop.
concrete5 5.7〜 いつも忘れるフォームヘルパーのまとめ
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
$fh = Core::make('helper/form'); | |
//text | |
echo $fh->text($name, $default_value, array('style' => 'display:block;'),'cutom_class_01 custom_class_02'); | |
//submit | |
echo $fh->submit($name, $default_value, array('style' => 'display:block;'),'cutom_class_01 custom_class_02'); | |
//label | |
echo $fh->label($target_name, $label_name); | |
//hidden | |
echo $fh->hidden($name, $default_value); | |
//textarea | |
echo $fh->textarea($name, $default_value,array('style' => 'display:block;' , 'cols' => '30' , 'rows' => '10')); | |
//checkbox & radio | |
//controllerなどから取得してくる値 | |
$default_val = array( | |
'val1' => 'yes' | |
); | |
//出力項目 | |
$options = array( | |
'val1' => 'yes', | |
'val2' => 'no', | |
'val3' => 'pillow', | |
); | |
//checkboxもradioも第三引数で選択状態の可否をtrue or falseで指定する | |
//checkbox | |
foreach($options as $key => $val){ | |
echo '<label>'.$fh->checkbox($name.'[]', $key, in_array($key,(array)$default_val), array('style' => 'display:block;')).'<span class="">'.$val.'</span></label>'; | |
} | |
//radio | |
foreach($option_set as $key => $val){ | |
echo '<label>'.$fh->radio($name, $key, in_array($key,(array)$default_val), array('style' => 'position:static;margin-left:0;')).'<span>'.$val.'</span>'</label>; | |
} | |
//select | |
$select_array = array( | |
'val1' => 'apple', | |
'val2' => 'orange', | |
'val3' => 'ra-men' | |
); | |
echo $fh->select('select_name_id', $select_array, 'val1', array('style' => 'display:block;')); | |
//multiple checkbox | |
$checked = array('val1','val3');//選択状態にしたい項目 | |
foreach($select_array as $key => $val){ | |
echo $fh->checkbox('multiple_checkbox_name_id[]', $key, in_array($key,$checked), array('style' => 'display:inline;')).' '.$val.'<br>'; | |
} | |
//カレンダー入力日付フィールド | |
$fhd = Core::make('helper/form/date_time'); | |
echo $fhd->date($name, $default_value); | |
//ファイルマネージャーを呼びだす画像アップロードフォーム | |
//$default_valueは画像IDを指定 初期値なしならnullを指定 | |
$al = Core::make('helper/concrete/asset_library'); | |
$form = '<div class="ccm-attribute ccm-attribute-image-file">'; | |
$form .= $al->file($id, $name,'プレースホルダーに表示するテキスト', $default_value); | |
$form .= '</div>'; | |
echo $form; | |
//サイトマップ | |
//http://documentation.concrete5.org/api/class-Concrete.Core.Form.Service.Widget.PageSelector.html | |
$form_selector = Core::make('helper/form/page_selector'); | |
print $form_selector->selectPage($name, $default_value); | |
//フィルターで表示制限できる | |
//例)ページID 181配下のページタイプID 9に当てはまるページをラジオボタンで出力 | |
//selectMultipleFromSitemapで呼び出すとチェックボックス | |
print $form_selector->selectFromSitemap( $name, $value, 181 ,array('ptID' => 9)); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment