このウェブスペースへは、まだホームページがアップロードされていません。 早速、エックスサーバー上へファイルをアップロードしてみましょう。 アップロードの方法などは、サポートマニュアルをご参照ください。
今回は、プロフィール情報に使用されるデータに絞ったバリデーションルールです。 バリデーションルール 以下の5つのバリデーションルールがコアに用意されています。 email メールアドレス url URL postal 郵便番号 phone 電話番号 ip IPアドレス email (メールアドレス) email(string $check, boolean $deep = false, string $regex = null) 第2引数$deepがtrueの場合、getmxrrもしくはcheckdnsrrもしくはgethostbynamelを使用してドメインの有無まで検証してくれます。第3引数$regexに正規表現を使用してドメインを限定してくれます。 public $validate = array( 'mailaddress' => array( 'rule' => array( '
前回の作業でお問い合わせ内容の保存ができた。 但し、登録時に何もチェックをしていないのでメールアドレス欄に何を入れても登録する事ができてしまう。 そこで今回は入力内容をチェックし不正な入力は受け付けないようにする。 (1) チェックルールの設定 入力チェックのチェックルールはモデルに記入する。 <?php class Contact extends AppModel{ public $validate = array( 'username' => array( 'rule' => 'notEmpty', 'required' => true, 'message' => '「お名前」は必ず入力して下さい', ), 'email' => array( 'rule'=> 'email', 'required' => true, 'message' => '「メールアドレス」は正しく入力して下さい
photoBy: https://secure.epsilon.jp/images/admin/logo.gifイプシロン決済の流れX 間違い 1 自分のサイトで商品購入情報を入力してもらう 2 https://secure.epsilon.jp/cgi-bin/order/receive_order3.cgi へ飛ばす <form action="https://secure.epsilon.jp/cgi-bin/order/receive_order3.cgi" method="post" >これだとダメです。 ○ 正しい 1 自分のサイトで商品購入情報を入力してもらう 2 自分のサイトの別ページへ一度飛ばし、そこで https://secure.epsilon.jp/cgi-bin/order/receive_order3.cgi に 必要情報をセットし、http post通信。 す
CakePHPでユーザー登録プロセスを作成する。 ユーザー参加型のwebサービスでは、当然必修になるユーザー登録機能をCakePHPで実装しようとおもいます。 ぐぐってみたら、 CakeDC / users がよさそうな感じ。 参考サイト https://github.com/CakeDC/users/blob/master/readme.md http://cakephp2.pro-mame.com/index.php?%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%2FCakeDC%2Fusers http://blog.pseudepigrapha.net/php/26/ ダウンロード https://github.com/CakeDC/users ユーザーテーブルの作成 解凍してフォルダの名前をusersへ、全てを/app/Pluginフ
CakePHPのモデルの代表的な機能でバリデーションがあります. カンタンなバリデーションルールを記述するだけで,開発者は正規表現などを意識しなくてもある程度の入力チェックを行えるようになります. 第7回演習の動作例ではこのバリデーションを使っているので解説します. この動作例ではユーザー登録をする画面を用意し,入力を行った際にルールに適さない内容があった場合は登録をキャンセルする.という内容です. 1. Entriesコントローラー作成 まずはコントローラーを準備しましょう. Userモデルにユーザを登録していきます. <?php class EntriesController extends AppController { public $name = "Entries"; public $uses = array('User'); public $components = array
cakePHPだけでなく、フレームワークには命名規約っていうのがあるらしい。全員がそれに沿って作ることで、作業の分割化がスムーズにできるようになるのだとか。 今までフレームワークを触ったことがないぼくは、つい「面倒くさいな」って思ってしまうんだけど、そうしないわけにもいかないっぽいしね(完全無視でも非効率ながらできるっぽいけど)。そんなわけで、それぞれの命名の仕方をまとめてみた。 (以下、全部CookBook日本語版に書かれてることを単にまとめただけです。hasAndBelongsToManyやcounterCacheといった場合の命名規約はその際に書くとして今回は端折って基本と思える部分だけを書きます) 基本──キャメル型とアンダースコア型、複数型と単数型 cakePHPはこの4つの形を使って命名していくらしい。 ■キャメル型 senddata → SendData bigarea →
今まで、selectボックスのgroupを作成するのにSet::Combineを使用していましたが、意外と簡単にできることに気付いてしまったので、ご紹介。(自分だけ知らなかったことに気付いた と言ったほうが近い。) デモ(データ配列なども) モデルは、散々出尽くしているかもしれませんが、以下 CREATE TABLE IF NOT EXISTS `prefectures` ( `id` INT NOT NULL AUTO_INCREMENT, -- id `prefecture` VARCHAR(8) NOT NULL, -- 都道府県 `area` VARCHAR(8) NOT NULL, -- 地方 PRIMARY KEY (`id`) ) 単一選択のselectボックス 一般的なセレクトボックス。中から1つを選ぶものです。 find('list')でfieldsに対して2項目設定しま
マイグレーションを使わないで、データベースのスキーマ構成を変更したりすると、特に複数人で開発しているような場合にこんなことが起こったりします。 自分の開発マシンとテストサーバ等でスキーマ構成が違っているさらには他人の開発マシンともスキーマ構成が異なっているしかもどっちがあっているか分からない例えば、みんなが色々変更しているせいで、カラムの順番が入れ子になってたりする本番サーバに反映しようとした時に、どの順番にスキーマ変更を行ったらよいか分からない。ソースコードのリリースバージョンと紐付くデータベースの状態がよく分からない。こういう本質的でないことに時間を使っては勿体無いので、データベースの構成管理にはマイグレーション機能を使うのが定石です。Railsなんかだと当たり前なのですが、今回はCakePHP2系でマイグレーションを利用する方法を紹介します。 CakeDC Migrationの導入C
CakePHPには、非常に強力なアソシエーションという機能があります。 これは相互に関連する複数のModel(テーブル)を一括して扱うための優れた仕組みです。 便利なアソシエーションですが、マニュアルを読んで理解したつもりでも、実際に活用する段になって、どのように設定すればよいのか迷うことがあります。 CakePHPに不慣れな方がアソシエーションで迷っていたときに、どのように教えてあげると分かりやすいのかという視点で、アソシエーションについてまとめてみました。 ここではHABTM(Has And BelongsTo Many)については触れません。それはまた別の機会で。 よくある勘違い 一般にAとBというふたつのモデルがあったとき、AモデルがBモデルを『ひとつ持っているときはhasOne』で『複数持っているときはhasMany』と認識している場合がありますが、その理解のままだと、ときに混
CakePHPにはデータ削除時のリンク用に postLInk() というFormHelperが用意されている。 postLink()を使うと、POSTで削除用アクションにアクセスできて、 削除確認用のアラートも出してくれる。 とても便利。 リンクではなく、ボタンが出力される postButton()もあるが、 確認用のアラートが出ない・・・。 ということで、使い方を以下にまとめる。 まずは、Viewに postLink() を使って、リンクを生成する。 echo $this->form->postLink( '削除', array('action'=>'delete', $keyword_id, $user_id), array('class'=>'link-style'), '本当に削除しますか?' ); 第1引数はリンクに表示される文字列。 第2引数はリンク先。 リンク先の引数はCon
公式ドキュメントにも記載されていますが、 案外はまってしまうことも多い仕様のため、自戒の意味で。 FormHelper — Cookbook v2.x documentation FormHelperのControllerおよび、actionを自由に変更する方法。 <?php echo $this->Form->create(null, array('url' => '/recipes/add')); // or echo $this->Form->create(null, array( 'url' => array('controller' => 'recipes', 'action' => 'add') ));
CakePHP 2になっていくつか数値用バリデーションルールが追加されています。 数値用 (コア)バリデーション decimal - 十進数であること numeric - 数値であること naturalNumber - 自然数(正の整数)であること range - 数値の範囲(超え・未満)であること comparison - 大・小・一致・不一致の比較に合致すること 5つともnotEmptyとなるので、必須としない場合は'allowEmpty' => trueを追加する必要があります。 decimal 十進数であることであることを検証します。 decimal(integer $check, integer $places = null, string $regex = null) 小数点以下の桁数を限定する場合は第2引数($places)で指定します。 第3引数で正規表現を指定した場合は、
CakePHP 1.3.0 での Bake の動きを調べてみました。 Cookbook って cake コンソールや Bake について、あんまり書いてないんですよね。 Bakeは色々と機能があるようなので、まずは最初のアプリケーションのセットアップと、データベース設定について、 bake project と bake db_config です。 環境 Mac Mac OS X 10.5.8(Leopard) MAMP 1.7.2 CakePHP 1.3.0 php 5.2.6 CakePHP本体(コア)のパス /Users/myuser/Dev/cakephp1.3.0 作成するアプリケーション(APP)のパス /Users/myuser/Dev/cakephp_baked /Users/myuser/Dev/cakephp1.3.0/app にアプリケーションフォルダがあるけど、コアと
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く