2009年2月26日木曜日

CakePHPのグローバル関数

CakePHP1.2には便利な関数が定義されています。
その中で自分が使いそうなものをいくつかピックアップしてみます。

a(mixed $one, $two, $three...)
配列を返します。
print_r(a('foo', 'bar')); 

// output:
array(
   [0] => 'foo',
   [1] => 'bar'
)

aa(array $one, $two, $three...)
echo aa('a','b'); 

// output:
array(
    'a' => 'b'
)

ife($condition, $ifNotEmpty, $ifEmpty)
三項演算に使用します。$condition が empty でない場合 $ifNotEmpty を返します。そうでない場合は $ifEmpty を返します。

ただのラッパーとして使うようであれば、複数人で開発する際には覚える必要がでてくるかな・・・。

http://book.cakephp.org/ja/view/121/%E3%82%B0%E3%83%AD%E3%83%BC%E3%83%90%E3%83%AB%E9%96%A2%E6%95%B0#

2009年2月19日木曜日

PHPで再帰処理を100ループ以上に増やす

PHPにXDebugを入れている状態で、PHPの再帰処理のループが100回以上になると、
Fatal error: Maximum function nesting level of ‘100′ reached, aborting!
と怒られてしまいます。 再帰処理のループ回数を増やすには php.iniに
xdebug.max_nesting_level = 25
と書くことで、ループ回数を増やすことができます。 php.iniの設定を変更したらApacheの再起動を忘れずに!

2009年2月11日水曜日

フォーラム構築ツール[my little forum]をインストールしてみる

PHPとMySQLでできているフォーラム構築ツール「my little forum」をインストールしてみました。

http://mylittleforum.net/

■動作環境の条件
・PHP
・MySQL

■ライセンス
GNU General Public License

■特徴
・スレッドのツリー表示
・スレッドの表示形式が何パターンかある(スレッド表示、ツリー表示、テーブル表示等)
・カテゴリー、タグの設定可能
・コードと絵文字利用可(?)
・画像アップ機能
・アバター
・RSS出力
・Smartyのテンプレートエンジン
・UTF-8サポート
・スパム対策(画像認証、IPフィルタ、等の複数の組み合わせも可能)
・管理画面からの設定可能な項目がたくさんある
・多言語対応(英語、ドイツ語、トルコ語ノルウェー語デンマーク語、中国等)
日本語対応はまだのようです(2009年1月15日現在)


■インストール方法
サイトからソースをダウンロードします。(2009年1月15日 時点で バージョン2.0 がダウンロード可能)

ダウンロードしたファイルを解凍して、設置します。
解凍してできたファイルサイズは約2MB

ブラウザからアクセスすると
Database error

Could not connect to the MySQL database. The forum is probably not installed yet.
MySQL error message: Access denied for user 'ODBC'@'localhost' (using password: NO)

と表示されてしまったので、フォルダ構成を見てみます。

すると「install」といういかにもなフォルダがあったので、ブラウザからここへアクセスします。

言語を設定して(日本語はありません)データベース、管理者アカウント等の各種設定をします。

2009年2月10日火曜日

フォーラム構築ツール[UseBB]をインストールしてみる

PHPとMySQLでできているフォーラム構築ツール「UseBBm」をインストールしてみました。

http://www.usebb.net/

■動作環境の条件
・PHP4
・MySQL

■ライセンス
GPL License

■特徴
カテゴリとフォーラム

* フォーラムのカテゴリを無制限に分けることができます
* フォーラムごとの構成オプション、およびアクセス許可設定が可能

投稿

* 投稿のためのアクセス許可レベルをベースに、主催者設定が可能
* 回答者は、フォーラムごと無制限、または最大数に設定することができます
* BBCode や顔文字の使用をサポートしています
* 管理者はHTMLコードを使える
* スパム投稿防止

会員の特徴

* メンバーの数の制限なし
* 個人プロフィールページ
* たくさんのプロフィール項目
* 表示名を自分の言語で登録できる(もロシアや中国語)
* アバター設定可能

機能

* モデレータをフォーラムごとに設定することができます
* トピックの移動/終了/再開/削除をできます
* 投稿を削除・編集することができます
* 主催者が投稿を編集できます。

管理インターフェース

* 様々な設定オプションを設定
* 作成/編集/カテゴリとフォーラムを削除
* 大量のメールを送信
* NGワード設定
* 編集/削除可能メンバーの設定
* IP,メールアドレスでの禁止

アクセス制御

* 4つのレベル:ゲスト、メンバー、管理権限および管理者
* 個々のレベルのフォーラムに基づくアクセス
* 活発なトピック、メンバー/スタッフのレベルに基づくアクセス/オンラインの一覧で、検索エンジンなど
* 全体フォーラムでは、メンバーのプロフィールおよび/または連絡先情報を無効にするユーザーのアクセス
* Eメールまたは管理者ベースのユーザ認証
* ユーザー登録を無効に

セキュリティ機能

* UseBBのユニークな保護機能を設定して人間とロボットの攻撃からあなたのフォーラムの保護:
* 数字認証
* 禁止IPアドレス
* メアドの有効性チェ区
* ログ

様々な特徴

* 強力な検索エンジンのクロスフォーラム
* 電子メールやトピックの購読を介してラインの概要
* RSS 2.0フィード

技術

* PHPのコードから分離されたHTMLテンプレート
* 標準準拠のXHTML 1.0厳格 と CSSテンプレート
* Unicode対応



■インストール方法
サイトからソースをダウンロードします。(2009年1月15日 時点で バージョン1.0.9 がダウンロード可能)

ダウンロードしたファイルを解凍して、設置します。
解凍してできたファイルサイズは約880KB

ブラウザからアクセスすると
UseBB General Error

An error was encountered. We apologize for any inconvenience.

    In file sources\common.php on line 172:

    E_USER_ERROR - config.php does not exist! Please rename config.php-dist to config.php.

This error should probably not have occured, so please report it to the webmaster. Thank you for your help.

If you are the webmaster of this board and you believe this is a bug, please send a bug report.

と表示されてしまったので、トップの階層にあったconfig.php-distconfig.phpにリネームします。

それからinstallフォルダがあったのでここにブラウザからアクセスします。
データベース設定、管理者アカウント設定をします。


UseBB General Error

An error was encountered. We apologize for any inconvenience.

    In file sources\db_mysqli.php on line 93:

    SQL_ERROR - Unknown database 'usebb'

This error should probably not have occured, so please report it to the webmaster. Thank you for your help.

If you are the webmaster of this board and you believe this is a bug, please send a bug report.


どうやら CREATE DATABASEはしてくれないようなので、phpMyAdminを使ってデータベースを作成します。

2009年2月4日水曜日

フォーラム構築ツール[phpBB]をインストールしてみる

PHPとMySQLでできているフォーラム構築ツール「phpBB」をインストールしてみました。
http://www.phpbb.com/

■動作環境の条件
・PHP4.3.3以上
・MySQL、Oracle、PostgreSQL 7.x/8.x、SQLite、MSSQL

■ライセンス
GNU General Public License,

■特徴
基本機能
・ UTF - 8をサポート
・検索エンジン対策
・プライベートメッセージシステム

セキュリティ
・一時期能停止
・パスワードハッシュ

アンチスパム
・画像認証
・連続投稿禁止
・ブラックリスト
・ユーザーロギング


データ管理
・対応しているデータベースが複数

登録
・ユーザー名、パスワードの長さチェック

投稿
・BBコード、顔文字投稿
・HTML投稿禁止
・NGワード
・添付ファイル
・下書き投稿
・投票
・投稿プレビュー

添付ファイル
・自動サムネイル
・ファイル形式表示

キャッシング
・DBキャッシュ
・テンプレートキャッシュ

プロフィール
・項目調整
・統計

検索システム
・高度な検索

ーーー長いので割愛
http://www.phpbb.com/about/features/

■インストール方法
サイトからソースをダウンロードします。(2009年1月15日 時点で バージョン3.0.4 がダウンロード可能)

ダウンロードしたファイルを解凍して、設置します。
解凍してできたファイルサイズは約7.6MB

ブラウザからアクセスすると
Introduction

Welcome to phpBB3!

phpBB™ is the most widely used open source bulletin board solution in the world. phpBB3 is the latest installment in a package line started in 2000. Like its predecessors, phpBB3 is feature-rich, user-friendly, and fully supported by the phpBB Team. phpBB3 greatly improves on what made phpBB2 popular, and adds commonly requested features that were not present in previous versions. We hope it exceeds your expectations.

This installation system will guide you through installing phpBB3, updating to the latest version of phpBB3 from past releases, as well as converting to phpBB3 from a different discussion board system (including phpBB2). For more information, we encourage you to read the installation guide.

To read the phpBB3 license or learn about obtaining support and our stance on it, please select the respective options from the side menu. To continue, please select the appropriate tab above.

と表示されます。

INSTALLというタブがあるので、そこをクリックします。
最初にインストール可能かチェックを行います。(mt-check.cgiみたいなもの)
mbstringの設定があれっぽいので、.htaccessに以下を追記します。

php_flag mbstring.encoding_translation 0
php_value mbstring.http_input pass
php_value mbstring.http_output pass


上記設定が済んだらいよいよインストール開始です。
まずデータベースの設定をします。
MySQLの場合、ユーザー名、パスワード、データベース名を入れればホスト名、ポート番号とかはデフォルトの値がはいります。
データベースはあらかじめ作っておく必要があります。

次に管理者の設定をします。

次にメールの設定(SMTPの設定)、サイトの設定をします。

2009年2月3日火曜日

フォルダーツリーを作成するソフト

お客さんにフォルダ構成を伝えるためのテキストファイルを作るとき、、、 
全部のフォルダ構成をメモ帳に書き出して・・・なんてすると手間ですが、そんなかゆいところに手が届くソフトがこれ
  TM_フォルダツリー
 任意のフォルダ配下のフォルダ構成をツリー表示するツールです。 
これを使えばあっという間にフォルダ構成が書き出せてしまいます!!! http://www.occn.zaq.ne.jp/maekawa/tool/tm_FolderTree/Manual/index.html

2009年2月2日月曜日

Subversionクライアントソフト RapidSVN

バージョン管理用のソフトとしてTortoiseSVN が有名ですがエクスプローラー自体が重くなるのが何とも・・・。
そしてTortoiseSVNを最新版にしたところ、僕の環境ではその重さが半端なくなったので、別のソフトを探してみました。

RapidSVN

2つのソフトの特徴はこちら

TortoiseSVN :エクスプローラーから利用が可能(ただしちょっと重くなります)
RapidSVN :軽量なソフト 多少使い勝手が悪い部分があります。(コミット時のコメントログが消えてる・・・。とか。基本的には問題ありません)

以下のページからインストーラーをダウンロードします。

最新バージョン
http://www.rapidsvn.org/download/release/0.9.6/


RapidSVN-0.9.6.exe

をダウンロードしてインストールします。

0.9.6では日本語化が最初からされているのでとっても楽ちん!

http://rapidsvn.tigris.org/