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月17日火曜日

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

以上


2012年1月9日月曜日

【CentOS関連】CentOS5.7の日本語入力について

お疲れ様です。

独学でCentOSを学ぼうと思い、vmwareにCentOS5.7をインストールしました。
日本語表記に変更後、日本語入力が出来なかったので
備忘録します。

ターミナルにて

yum install scim-anthy

を実行します。

以上

【CentOS関連】CentOS5.7をインストールした場合の日本語利用について

お疲れ様です。

独学でCentOSを学ぼうと思い、vmwareにCentOS5.7をインストールしました。
インストール後、デフォルトの英語表記から日本語表記にする際に詰まったので
備忘録します。

1.まずはターミナルを起動します

Applications→Accessories→Terminal

2.ターミナル起動後、まずはrootに変更します。
[○○@localhost ~]$ su - (suと-の間はスペースを1つ空け、Entryキー)
Password: (パスワード入力。入力しても文字は出ませんがそのまま入力しEntryキー)
[root@localhost ~]# (rootに代われば成功)

3.次のコマンドを打つ
#yum install fonts-japanese

あとはインストールが始まります。
この作業は、日本語フォントをインストールする作業です。
デフォルトでも日本語が用意されていますが、文字化けしているので上記作業が必要です。

インストール完了後は
System-Administration-Languageで日本語を選択します。

それでも代わらない場合はキャッシュが残っているので
# fc-cache -fvを行い、キャッシュをクリアします。

参考サイト:

以上

2011年7月22日金曜日

【CakePHP関連】hashPasswords関数について

お疲れ様です。

ユーザーのパスワード変更で
自前でパスワードを暗号化する処理を実装する際にはまったので備忘録します。

authコンポーネントを利用している場合は
$this->Auth->hashPasswords($data); という具合で暗号化しますが

hashPasswordsはユーザー名とパスワードの両方が必要です。
パスワードだけだと、ハッシュ値を生成してくれません。

上記の例で言うと$dataには

$data['User']['username'] = 'username';
$data['User']['password'] = 'password';

という風に両方設定します。

参考サイト:

以上

2011年6月28日火曜日

【PHP関連】フォームでのファイルの最大アップロード数について

お疲れ様です。

はまりましたので備忘録します。

以下参考サイトからの抜粋

-------------------------------------------------------------------------------------

PHPのバージョン5.2.12から、一つのフォームで送信できるファイルの数がデフォルトで20個に制限されるようになりました。(実際にアップロードするファイル数ではなく、の数の制限です。)

-------------------------------------------------------------------------------------

まったく知りませんでした。

変更するためには
php.iniの設定で
max_file_uploads = 100

としてあげます。

以上




2011年6月15日水曜日

【その他関連】リッチテキストエディタとは

お疲れ様です。

いまさらですが
わからない単語があったので備忘録しておきます。

「リッチテキストエディタ」

リッチ テキスト エディタとは、入力したデータと出力したデータの見た目が一致するテキスト エディタの事を指します。 今作りながら見ている物がそのまま出力結果となる、この事を用語で

WYSIWYG: "What You See Is What You Get"
と言います。

私が利用しているCMS Joomlaのエディタもリッチテキストエディタの一種ですね

以上

2011年6月14日火曜日

【PHP関連】ファイル名が日本語のファイルをアップロードするには

お疲れ様です。

見事にはまりましたが
アップロードファイルの文字コードをSJISにエンコードしてあげればよかったみたいです。

mb_convert_encoding($uploadfile, "SJIS", "EUC-JP")

参考サイト:
http://okwave.jp/qa/q1724442.html

2011年6月10日金曜日

【PHP関連】ファイルアップロードのファイル容量制限(upload_max_filesize)の変更方法

お疲れ様です。

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

phpファイルに記述する場合

// ファイルアップロードの最大サイズを 10M に設定
ini_set('upload_max_filesize', 10 * 1024 * 1024);

.htaccess に記述する場合

# ファイルアップロードの最大サイズを 10Mに設定
php_value upload_max_filesize 10M

# ファイルアップロードの最大サイズを 500Kに設定
php_value upload_max_filesize 500K

以上

【CakePHP関連】セッションタイムアウトについて

お疲れ様です。

タイトルの件で、何度も調べるので備忘録します。

タイムアウトは
core.phpで設定します。

Configure::write('Session.timeout', '120');

上記の感じで、単位は秒です。

しかし、これだけではありません。
実はセキュリティレベルも絡んできます。

関連図は

・セキュリティレベルがhigh
 タイムアウト設定値 × 10

・セキュリティレベルがmedium
 タイムアウト設定値 × 100

・セキュリティレベルがlow
 タイムアウト設定値 × 300

となります。

なので、例でいくと

high:120×10=1200秒(20分)
medium:120×100=12000秒(200分)
low:120×300=36000秒(600分)

となります。

以上

2011年6月9日木曜日

【CakePHP関連】コンポーネント内でコントローラーの関数を利用する方法

お疲れ様です。

タイトルの件で調査しましたので、備忘録します。


方法は下記のとおりです。

1.initialize() メソッドを実行して $controller を呼び出す

2.インスタンスされた$controllerから各メソッド利用

例)

function initialize(&$controller) {
$this->controller =& $controller; //インスタンス生成
}

function login($value)
{
$this->controller->redirect('success'); //メソッド利用
}

コントローラーをインスタンスして利用するってことです。

以上

【Androidアプリ関連】ローカル変数・・・読み取れませんというエラーについて

お疲れ様です。

タイトルの件で、ハマりましたので備忘録します。


このエラーの意味は

「宣言されているが、利用されていない」というエラー

宣言後に利用されていない変数があるかどうかをチェックしましょう。
コメントアウトなどを確認すると
「あとで使うけど、今は確認のためにコメントアウトしておこう」
といったことでこのエラーが出たりします。

以上

【Androidアプリ関連】has stopped unexpectedly・・・というエラーについて

お疲れ様です。

タイトルの件で調査しましたので、備忘録します。

Androidアプリのintent処理を作成した際に遭遇したエラーですが
原因は以下の3つが怪しいです。

1.AndroidManifest.xmlにエラー
2.繊維先のjavaクラス内にエラー
3.繊維先のレイアウトxmlファイルにエラー

私もこのエラーに装具しましたが、3のエラーが該当しました。

Webで情報を探していると1のエラーが多かったので
結構時間かかりました。

ちなみに
intentというのは
簡単に言うと画面繊維のことで
Androidアプリでいうとアクティビティを切り替える処理という
感じです。

以上

【Androidアプリ関連】レイアウトxmlファイルの書き方

お疲れ様です。

最近、Androidアプリの開発方法などを勉強していますので
情報を発信していきたいと思います。

今回はタイトルの件で確認したことです。

Androidアプリはxmlでアクティビティのレイアウトを設定することができます。

android:text="@string/weight_tanni_title"
android:id="@+id/user_best_weight"

こういう感じなのですが
@stringとか@idとかあります。
その後の記述は変数名みたいなものです。

このstringとidの違いは

string=string.xmlというxmlファイルで変数値を設定する
id=javaクラスファイルで変数値を設定、利用する

となります。

どういうことかといいますと
xmlでレイアウトの設定が可能ですが、そこには変数名だけを定義し
別のxmlファイルで値を設定する、という記述が可能です。
その場合はstring.xmlという箇所で設定します。

idは各プロジェクトのjavaクラスファイル内で、設定することが可能です。

わかりにくいかもしれませんが
要は変数に値を格納するファイルが別というイメージで考えていただければよいです。

以上

2011年6月3日金曜日

【PHP関連】キャッシュを残さないmetaタグの記述

お疲れ様です。

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


Metaタグでキャッシュさせないようにする。

<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">

PHPのヘッダー関数でキャッシュさせないようにする。

header('Last-Modified: '.gmdate( 'D, d M Y H:i:s' ).' GMT');
header('pragma: no-cache');
header("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");

以上

2011年6月2日木曜日

【PHPExcel関連】罫線を上下左右に引く場合

お疲れ様です。

タイトルの件で
調査して見つけましたので備忘録します。

例)

$sheet->getStyle('A1')->getBorders()->getAllBorders->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);

以上です。

2011年5月31日火曜日

【CakePHP関連】Javascriptコーディングの際、要素名をどのように書くか

お疲れ様です。

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

Cakeでフォームを作成すると
nameには配列っぽい名前が指定されます。

例)