2012年1月30日月曜日

【CentOS関連】CentOS5.7のMySQLインストールについて

お疲れ様です。

CentOSにMySQLをインストールしてみましたので
備忘録します。

手順

1.yumによるインストール

[root@localhost ~]# yum install -y mysql-server

自動的にインストールが始まります。

2.MySQL起動

[root@localhost ~]# service mysqld start

起動します。

3.パスワードの設定

MySQLを起動した状態で

[root@localhost etc]# mysqladmin -u root password '設定したいパスワード';

設定後は、パスワードの確認をお粉します。

[root@localhost etc]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

無事ログインできました。

4.MySQL終了

[root@localhost ~]# service mysqld stop

ついでに再起動は
[root@localhost ~]# service mysqld restart

となります。

5.バージョンの確認

[root@localhost ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> select version(); ←
+-----------+
| version() |
+-----------+
| 5.0.77 |
+-----------+
1 row in set (0.00 sec)

mysql>


以上



【CakePHP関連】cakephp1.2のエラーハンドリング方法について

お疲れ様です。

タイトルの件で備忘録します。

基本的にcakephpでのエラーハンドリングはcakeErrorというメソッドを利用します。
今回は404エラーを例にご紹介したいと思います。

実装手順は以下の通りになります。

1.appフォルダ直下にapp_error.phpというファイルを作成。

中身はこんな感じです。


class AppError extends ErrorHandler {

}

?>

AppErrorクラスのアクションメソッドにカスタマイズしたいエラーを記述していきます。


2.エラー表示用のアクションメソッドを記述。


class AppError extends ErrorHandler {

function error404($params) {

$this->controller->layout = LAYOUT; //使用レイアウト設定
$this->controller->pageTitle = PAGE_TITLE; //ページタイトル設定
parent::error404(); //継承元のerror404メソッドを読み込み

}

}

?>

404エラーアクションメソッドを作成します。
上記例では、使用レイアウトとページタイトルを設定し
親クラスのメソッドを読み込んでいます。


3.作成したエラーアクションメソッドのctpファイルを作成
app/views/errorsフォルダにアクションメソッド名のctpファイルを作成します。


以上で404エラーをオリジナルで作成することができます。

以上

2012年1月19日木曜日

【CakePHP関連】beforeFilter()について

お疲れ様です。

タイトルの件で備忘録します。

beforeFilter()の役割をはっきりしたかったので
改めて調査しました。

まずbeforeFilter()の利点を簡単にいうと

コントローラー内の共通の機能をまとめられる

という点です。

beforeFilter()を設定しておけば、コントローラー内の各アクションが
読み込まれる前に、beforeFilter()が読み込まれます。
いちいち各アクションに共通のコードを書く必要がなくなります。

しかし注意点があります。
たとえばスーパークラスのAppControllerにbeforeFilter()を記述したうえで
継承ControllerにもbeforeFilter()をコーティングすると
AppControllerのbeforeFilter()は読み込まれません。
スーパークラスのbeforeFilter()も読み込ませるようにするためには

parent::beforeFilter();

をコーティングします。

以上

2012年1月16日月曜日

【CakePHP関連】ユニークなIDを生成する方法

お疲れ様です。

タイトルの件で備忘録します。

Cakephp1.2においてのユニークなIDは

$uuid = String::uuid();

という記述で生成されます。

生成されるIDは「4f12ece4-e2b0-451e-ae27-4ee23b6a1be2」という
感じになります。

この実装は、下記のRFCに準拠しています。

http://www.ietf.org/rfc/rfc4122.txt

以上