CakePHPをやっと始める気になったので、はまった部分をメモっておく
Category : CakePHP 初心者メモ, PHP
以前から始めたい始めたいと思っていた、PHP開発フレームワーク「CakePHP」。
いちを、、現在の私のメイン言語はPHPですが、未だにまともにクラスも書けないし、オブジェクト指向の頭にはなっていない、、、というのが現在の状況。
しかし、これではまるっきり先には進まないし、仕事で開発案件もたまってきているので、思い切ってCakePHPの勉強を始めようと思った。
いちを参考書はすでに買ってあるのです(^^;)
↓こちら
が、この参考書を見ても、何からやっていいかわからないので(^^;)、とりあえずチュートリアルでもやってみることにした。
やったのはこれ↓
いちを、、現在の私のメイン言語はPHPですが、未だにまともにクラスも書けないし、オブジェクト指向の頭にはなっていない、、、というのが現在の状況。
しかし、これではまるっきり先には進まないし、仕事で開発案件もたまってきているので、思い切ってCakePHPの勉強を始めようと思った。
いちを参考書はすでに買ってあるのです(^^;)
↓こちら
CakePHPガイドブック
posted with amazlet at 08.04.02
安藤 祐介 新原 雅司 堂園 俊郎
毎日コミュニケーションズ
売り上げランキング: 3084
毎日コミュニケーションズ
売り上げランキング: 3084
が、この参考書を見ても、何からやっていいかわからないので(^^;)、とりあえずチュートリアルでもやってみることにした。
やったのはこれ↓
実行環境は、以下のローカルマシン環境で実施した。
- XAMPP
- Apache
- MySQL
- etc
で、上記のチュートリアルには、cake自体をドキュメントルートに、と書いてあるが、すでにローカルのルートディレクトリは使用していたので、Apacheのhttpd.confでエイリアスを使用することにした。
cakeは「C:\cake」として配置し、「ブログチュートリアル」ということなので、アクセスするURLは「http://localhost/blog/」になるように、httpd.confには以下のように記述した。
Alias /blog "C:/cake"
<Directory "C:/cake">
Options ALL
AllowOverride All
Order allow,deny
Allow from all
</Directory>次に、データベース(MySQL)を設定した。XAMPPに付属しているphpMyAdminにて、「blog」というデータベースを作成し、以下のテーブルを作成した。
CREATE TABLE posts (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(50),
body TEXT,
created DATETIME DEFAULT NULL,
modified DATETIME DEFAULT NULL
);を作成。ついでに同様にphpMyAdminからレコードを一つ追加した。
次にCakePHPからMySQLにアクセスできるように、「cake/app/config/database.php」を編集する。
var $default = array('driver' => 'mysql',
'connect' => 'mysql_pconnect',
'host' => 'localhost',
'login' => 'root',
'password' => '',
'database' => 'blog' );MySQLのパスワードを設定しないといけないだろうが、ここはとりあえず置いといて、デフォルトのままで行く。
それではいざ!と言う感じで、ブラウザから、「http://localhost/blog/」にアクセスしたみたが、あえなく撃沈。。。どうもまだ設定しないといけないようだ。。。
「.htaccess」の設定が必要だったらしい。
設定する「.htaccess」は、
- /blog/.htaccess
- /blog/app/.htaccess
- /blog/app/webroot/.htaccess
それぞれのファイルで太字の部分を追加しなければいけなかった。
- /blog/.htaccess
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /blog
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>- /blog/app/.htaccess
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /blog/app
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>- /blog/app/webroot/.htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/app/webroot
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>これで、いざ!、「http://localhost/blog/」へアクセスすると、CakePHPのデフォルト画面が表示され、データベースへも接続されています、という旨も表示されたので成功!!
あとは、「A.6. Post Model の作成」から順にやっていけば、その通り動いてくれる。
というか、CakePHPってこんなに高速に開発ができるのか!!と感心させられる。
なかでもやはりデータベースとのやりとりが、SQL文を意識しなくてもいいと言う部分がとっても良い。素でPHPからデータベースにアクセスするには、一つのテーブルでもいくつもSQL文を書かなければいけませんからね。Pear DBを使ったにせよ、SQL文は必要。これを書かなくて、O/Rマッピングという仕組みで動いているのはすこぶる便利だな~と思う。
さぁ、こんな感じで、CakePHPを使ってどんどん開発を進めていくことにしよう!!
CakePHPガイドブック
posted with amazlet at 08.04.02
安藤 祐介 新原 雅司 堂園 俊郎
毎日コミュニケーションズ
売り上げランキング: 3465
毎日コミュニケーションズ
売り上げランキング: 3465
おすすめ度の平均: 

わかりやすい!
もう一歩!
よくまとまっている
1.1系がメイン、しかし基本的な学習には充分
判りやすく丁寧に書いてあります。

コメントする