E-PARLOR : PHPLIB

HomePage :: Blog :: Gallery :: Library :: Forum :: Categories :: Index :: Changes :: Comments :: Login
PHPLIB

※PHP,MySQL はインストール済で動作確認済とする。

PHPLIBはPHP3仕様となっているので、
/usr/local/phplib/ 配下
/php
/pages
/admin
にあるファイルは拡張子がphp3になっている。
これらのファイルやファイル中の属性をphpという拡張子に変更する。

◆prepend.phpの中を変更
$_PHPLIB["libdir"] = "/usr/local/phplib/php/"; --> インストール位置を指定
require($_PHPLIB["libdir"] . "db_pgsql.inc"); --> 利用するDBに合わせる

◆local.incの中、以下の箇所を変更
class DB_Example extends DB_Sql {
var $Host = "localhost";
var $Database = "test"; (データベース名)
var $User = "mysql"; (登録したユーザがなければデフォルトの root/パスワードなしを使う)
var $Password = "";

◆テスト・テーブルデータ入力
MYSQLのtestデータベースに、PHPLIBテスト用のデータを入力します。
mysql -u mysql test < /usr/local/phplib/stuff/create_database.mysql
※testデータベースは、MySQLインストール・イニシャル時に作成されてます。



session.incの中、以下の3行をコメントに(1桁目を # に)
# function gc() {
# $this->that->ac_gc($this->gc_time, $this->name);
# }


}

◆認証管理・実装
1./usr/local/lib/php.ini による方法
auto_prepend_file = /usr/local/phplib/php/prepend.php"
include_path = ".:/usr/local/phplib/php/"

auto_prepend_file
自動的にスクリプトの先頭に追加されるファイルを指定

include_path
インクルートサーチパス指定

2..htaccess による方法
.htaccessによる制御を許可設定
例、バーチャルドメイン
<VirtualHost *>
ServerAdmin admin@e-parlor.com
DocumentRoot /www/secure.e-parlor.com/htdocs
ScriptAlias /cgi-bin/ /www/secure.e-parlor.com/cgi-bin/
ServerName secure.e-parlor.com
ErrorLog logs/secure.e-parlor.com.error_log
CustomLog logs/secure.e-parlor.com.access_log combined
<Directory /www/secure.e-parlor.com/htdocs/Members/pages>
AllowOverride All
</Directory>
</VirtualHost>

/www/secure.e-parlor.com/htdocs/Members/pages
.htaccess を設置する(サンプル)
--ここから
DirectoryIndex index.php
<IfModule mod_php4.c>
php_value include_path ".:./include:./template:/usr/local/phplib/php"
php_value auto_prepend_file "prepend.php"
</IfModule>
AddType application/x-httpd-php .php .php3 .inc .ihtml
--ここまで


◆動作テスト・準備
テスト用ファイル一式をコピー
配布ファイル内のディレクトリpagesをhtdocsディレクトリにコピーします。
例:cp -R pages /usr/local/apache/htdocs

◆apache httpd.conf
PHPの実行プログラムの設定で、拡張子を .php,.phtml,.php3 のように .php3 も含めておくこと

◆動作テスト
ブラウザより/pages/index.php3にアクセスします。
次にshowoff.php3にアクセスします。[名前:kris パスワード:test]
http://127.0.0.1/〜〜/pages/index.php3 にアクセス

Reload、Load、Show、Logout などをクリックして実行できることを確認する。
login フォームでは Username: kris、Password: test を入力する。

以上でエラーがなければOK!

◆追加・設定
ブラウザをリロードしても、画面が更新されない状態になったときは
session.incを変更します。
Last-Modifiedヘッダを送信している部分をコメントアウトしてやるとうまくいきます。(4箇所)

−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
■PHPLIBの活用法

◆アクセス制限
まずはPHPLIBのサンプルクラスを使用します。
アクセス制限をかけたいファイルの一番上に次のように書いてください。

page_open(array("sess" => "Example_Session",
"auth" => "Example_Auth",
"perm"=> "Example_Perm",
"user" => "Example_User"
));
$perm->check("admin");
−−−−−
さらに、一番最後に、次のように書いてください。
page_close();

これで、このファイルにはアクセス制限がかけられました。
PHPLIBの認証機能により、認証されていない場合はログイン画面が、
すでに認証済みの場合は該当するファイルの内容が表示されます。
[名前:kris パスワード:test] 初期設置ID
にてログインできます。

ユーザ追加
このファイルを読み込めるユーザを追加しましょう。
testデータベースのauth_userテーブルにユーザデータが入っています。
ここにデータを挿入してください。permはadminで、user_idは任意のもので構いません。
ここで挿入したusernameとpasswordでログインできるようになります。

ログイン画面
test for login というログイン画面ではあまりに寂しいですね。
これを書き換えましょう!
PHPLIBのファイルを置いてあるフォルダ(/user/local/apache/php/など)に
loginform.ihtmlというファイルがあります。
これを編集すると、サンプルのログイン画面が変更できます。

There are no comments on this page. [Add comment]

1999-2006 The E-PARLOR Project. All right reserved. :: Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by Wikka Wakka Wiki 1.1.6.1
Page was generated in 0.0298 seconds