メシのタネ

Webプログラミング 備忘録

  • DOMをPHPで操作できたらいいよね

    そうだよね。そう思うよね。JavaScriptでやると、画面がガタついたりするもんね。そうならないようにする方法もあるかもしれないけど、僕はできませんので、サーバー側でなんとかできたらええなぁと思って挑戦したけど、できませんでしたよ。PHP標準でHTMLをDOMにできるらしい今、技[...]

    続きを読む
  • 設計書ってなんで書くの?

    設計書をなぜ書くのかから始めてかれこれ3年近くこの禅問答をやっているわけですが、いまだに答えは出ません。ただ、その禅問答をやる中で設計書に対する取り組み方は大きく変わったので、その一部でも書いていきたい。基本設計はとにもかくにも必要だと思う設計書はいらぬ!という話をよく聞くし、自分[...]

    続きを読む
  • 書ききってやる。

    久々に書いてみる。久々に文章を書くということをやってみようと思う。伝える作業を観察したいと思ったからそうしたいと考えた。情緒的な文章は基本的にゴミ箱にぽいしてきましたが、情緒的なのも自分だと思う。「文章をかくという作業は、とりもなおさず自分と自分をとりまく事物との距離を確認すること[...]

    続きを読む
  • 普通の会社で2年普通に働いて思う事

    えらい寒くなりました。文句言いながらも現職を続けて2017年12月1日にめでたく2年がたちました。分かりやすいが乱暴に言えばITドカタと呼ばれる業界に入って案件のヒエラルキーの無慈悲さを痛感しながらも、それでもしょうがないと頑張る人たちに心を打たれながら「じゃあ俺も」と頑張れない自分に挫折して、とあ[...]

    続きを読む
  • jQueryUiのDatepicker利用時にminDate設定するとバグる件

    題名の通りなんですが、DatepickerでminDate使うとバグります。また後でキャプチャ見て貰いますけど、灰色の部分が、minDateで設定した日付が反復して出るようになるんですね。こういうの気が付かない人がいるかも知れませんが、ChoromeでminDate設定してる人は気にしてみてくだ[...]

    続きを読む

【FuelPHP】フォーム作成に関する記事その1

fuelphp
以前にこんな記事を書きましたが、
焦点が定まってなくて、一度に色々あれこれ書こうとした結果、ひどい記事になりました。
なぜひどいのかといえば、自分が後で読んで、どれ一つとして理解できず、
結局参考リンクから知識をキャッチアップしなおしたからです。
なので今回は前回より分かりやすく、前の記事の失敗を踏まえて、
なるべく分かりやすく掘り下げて行きたいと存じ上げます。

ちょっと1回じゃ書ききれないので3回くらいで書いていけたらなと思います。

FuelPHPにおけるフォームの作成方法


フォームの作成方法は2種類だと勝手に分けてます。
個別に1つ1つフォームをビューに記述方法と、
オブジェクト指向風にプログラム内部に記述する方法とがあります。
DBと連携させる場合は後者が扱いやすい気がします。

フォームを個別に作る


フォームを個別に作りたい場合Formクラスを使います。
バリデーションを組み合わせたい場合には、Fieldsetクラスも一緒に使います。

フォーム要素の作成はOpenメソッドを使う


フォーム要素を閉じる


labelを貼る


1つ目のパラメータはラベルが表示したい文字
2つ目のパラメータはidを設定するけどするとfor=form_mainlabelになる
3つ目のパラメータはHTML属性を設定できますforはこっちで設定した方が良い?

テキストボックスを作る


1つ目のパラメータはHTMLのname属性に入る値
2つ目のパラメータはHTMLのvalue属性に入る値
3つ目のパラメータはHTML属性を設定できます

コンボボックスを作る


1つ目のパラメータはHTMLのname属性に入る値
2つ目のパラメータはselectedの設定
3つ目のパラメータは連想配列で入れれば
optionタグにvalueとタグで囲ったテキストを入れてくれる。
さらに入れ子にすると、optgroupになる
4つ目のパラメータはHTML属性を設定できます

ラジオボタンを作る


Form::inputのメソッドでtype属性がradioになる

1つ目のパラメータはname属性の値
2つ目のパラメータはvalue属性の値
3つ目のパラメータはチェックの状態を設定できる。
2つめと同じだったらチェックっていう風にもできる。
4つ目のパラメータはHTML属性を設定できます

チェックボックスを作る


Form::inputのメソッドでtype属性がradioになる

1つ目のパラメータはname属性の値
2つ目のパラメータはvalue属性の値
3つ目のパラメータはチェックの状態を設定できる。
2つめと同じだったらチェックっていう風にもできる。
4つ目のパラメータはHTML属性を設定できます

テキストエリアを作る


1つ目のパラメータはHTMLのname属性に入る値
2つ目のパラメータはHTMLのvalue属性に入る値
3つ目のパラメータはHTML属性を設定できます

再入力させたい場合


間違った時にフォーム画面に戻した際、
valueの設定がされていないと、ユーザーがイチから入力しないとダメです。
だから、valueにはInput::post(‘name’)を入れます。

実際使って見た例


自分が昔使ってたコードの一部

次回はバリデーション!


というわけでfuelphpでのフォームの作成方法を書きました。
ただ、あんまりこれだけでは実践的じゃないので、
後日バリデーションの方法、オブジェクト指向での実装方法と2回に分けて書きます。
これ知りたいとかあったら@mikaduki_Rockに言って下さい。
来週中くらいに二つともかければいいかなぁ・・・。

関連記事

コメントをお待ちしております