PHP Gallery

トップ > ダウンロード > PHP Gallery

PHP Gallery (ギャラリー作成)について

画像ファイルの管理ができます。主な機能は以下のとおりです。

プログラムの機能については、機能解説も参照してください。また、プラグインを導入すれば以下のような機能も追加できます。

スクリーンショットで使用しているイラストは、牛飼いとアイコンの部屋さんからお借りしたものです。

広告

ダウンロード

以下のリンクから PHP Gallery をダウンロードできます。ダウンロードの前に注意事項を確認してください。

ファイルは圧縮されているので、ダウンロードが完了したらファイルを解凍してください。

ファイル構成

gallery.lzh を解凍すると、以下のファイルとフォルダが作成されます。不足しているフォルダがあれば、手動で作成してください。

index.php
メインプログラム
config.php
設定ファイル
.htaccess
.htaccessファイル
error.log
エラー情報記録ファイル
configs/
設定ファイル格納ディレクトリ
logins/
ログイン情報格納ディレクトリ
css/
CSS格納ディレクトリ
js/
JavaScript格納ディレクトリ
templates/
テンプレート格納ディレクトリ
templates_c/
コンパイル済みテンプレート格納ディレクトリ
files/
アップロード画像格納ディレクトリ
thumbnails/
ミニ画像格納ディレクトリ
plugins/
プラグイン格納ディレクトリ

設置方法

PHP Gallery の設置方法。初めて設置に挑戦する方は設置の基本を参考にしてください。

  1. gallery/config.phpエディタで開き、各設定項目を編集します。設定項目内の「基本設定」と「データベースの設定」は、環境に合わせて必ず設定します。(データベースはあらかじめ作成しておきます。)
  2. gallery/ フォルダごと、すべてのファイルをアスキーモードでアップロードします。
  3. PEAR::DBSmartyが利用できることを確認します。
  4. gallery/error.logパーミッション606 に、gallery/logins/gallery/files/gallery/thumbnails/gallery/templates_c/ のパーミッションを 707 に、gallery/configs/ 内にあるファイルのパーミッションを 606 に設定します。
  5. ブラウザソフトで gallery/index.php?mode=setup にアクセスし、データベーステーブルを作成します。
  6. ブラウザソフトで gallery/index.php にアクセスし、エラーが表示されなければ完了です。

ディレクトリ構成例

設置完了後のディレクトリ構成は以下のようになります。(MySQL利用時。)
カッコ内の数値はパーミッションの値です。

gallery / index.php
   |      config.php
   |      error.log [606]
   |      .htaccess
   |
   +-- configs / _gallery.ini [606]
   |
   +-- logins [707] /
   |
   +-- css / ~略~
   |
   +-- js / ~略~
   |
   +-- templates / ~略~
   |
   +-- templates_c [707] /
   |
   +-- files [707] /
   |
   +-- thumbnails [707] /
   |
   +-- plugins / ~略~

Lightboxの導入方法

  1. Lightbox2 にアクセスし、DOWNLOAD からLightboxをダウンロードします。
  2. ダウンロードしたファイルを解凍すると、css/images/js/index.html が作成されます。
  3. css/ 内にあるファイルを gallery/css/ 内に、js/ 内にあるファイルを gallery/js/ 内に、images/gallery/ 内に、それぞれ移動します。
  4. gallery/js/lightbox.js の65行目あたりにある画像ファイルのパスを、http:// からの指定か、/ からの指定に変更します。
  5. gallery/templates/gallery.htmlgallery/templates/view.html のヘッダに以下のコードを追加します。
<link rel="stylesheet" href="{$http_path}css/lightbox.css" type="text/css" media="all" />
<script type="text/javascript" src="{$http_path}js/prototype.js"></script>
<script type="text/javascript" src="{$http_path}js/scriptaculous.js?load=effects"></script>
<script type="text/javascript" src="{$http_path}js/lightbox.js"></script>

さらに、同ファイルの40行目あたりにある

<li><a href="{$http_path}{$file_dir}{$work.file}"><img src="{$http_path}{$thumbnail_dir}{$work.thumbnail}" alt="{$work.text} ({$work.date|date_format:'%Y/%m/%d'})" width="{$work.thumbnail_width}" height="{$work.thumbnail_height}" /></a></li>

この部分を以下のように変更します。(画像へのリンクに rel 属性と title 属性を追加。)

<li><a href="{$http_path}{$file_dir}{$work.file}" rel="lightbox[{$field.id}]" title="{$work.text} ({$work.date|date_format:'%Y/%m/%d'})"><img src="{$http_path}{$thumbnail_dir}{$work.thumbnail}" alt="{$work.text} ({$work.date|date_format:'%Y/%m/%d'})" width="{$work.thumbnail_width}" height="{$work.thumbnail_height}" /></a></li>

これで、画像をクリックすると同一ウインドウ内に拡大画像が表示されます。

更新履歴

2008/04/24 (Ver 1.13)
管理者用ページへのログイン状態を一定期間以上保持できない不具合を修正。
2008/04/15 (Ver 1.12)
プラグインの実行タイミングを調整。
エラーメッセージの表示処理を調整。
2008/03/13 (Ver 1.11)
空欄でのデータ登録時、nullを登録するように変更。
管理者ページへのログイン処理を少し改良。
2008/03/07 (Ver 1.10)
管理者ページへのログイン状態をテンプレートから参照できるように改良。
2008/02/23 (Ver 1.09)
ファイルアップロード時のエラー処理を改良。
2008/02/09 (Ver 1.08)
日時の登録処理を改良。
2008/02/06 (Ver 1.07)
管理者用ページへのログイン状態を保持できるように改良。
2008/01/05 (Ver 1.06)
設定ファイルの書式を調整。
2007/12/14 (Ver 1.05)
テンプレートの変数名と書式を調整。
2007/12/01 (Ver 1.04)
SSL利用時、セッションが利用できないことがある不具合を修正。
改行コードの統一処理を追加。
2007/11/27 (Ver 1.03)
入力内容チェック処理を調整。
2007/10/15 (Ver 1.02)
データベーステーブルの設定を調整。
入力内容チェック処理を調整。
2007/10/02 (Ver 1.01)
データ登録時の処理を少し調整。
2007/09/17 (Ver 1.00)
バージョン1.00を公開。