e-learning、オラクル研修、LMS(学習管理システム)のiStudy

e-learning、オラクル研修、LMS(学習管理システム)のiStudy

第115回「WEBアプリ作成(13)(イメージファイルの表示の仕方 2/2)」

2014.12.18

こんにちは。インストラクターの蓑島です。いよいよ年の瀬ですね。

前回はイメージファイルをサーバーにアップロードする方法を中心に解説しました。本メルマガでは、Oracle XML DBの機能を用いていますので、アップロードする場所が通常のファイルシステムでなく、データベース内の領域です。しかし、よくあるFTPツールを使って簡単にアップロードできます。

では今回は、サーバにアップしたイメージファイルを実際にWEBアプリで表示するPL/SQLプロシージャを作成しましょう。早速、以下の例をご覧ください。とても簡単な例です。

SQL> SHOW USER
ユーザーは"SCOTT"です。

(注意)以下のソースコードはブラウザ表示のために、山括弧(「<」と「>」)を全角にしています。
コピーして実行する方は、必ず、山括弧(「<」と「>」)を半角に変換してください。

1
2
3
4
5
6
7
8
9
10
11
12
CREATE OR REPLACE PROCEDURE SHOW_IMG( P_IMG IN VARCHAR2, P_WIDTH IN VARCHAR2)
  IS
BEGIN
  HTP.P( '<HTML>' );
  HTP.P( '<HEAD><TITLE>' ||P_IMG || '</TITLE></HEAD>' );
  HTP.P( '<BODY>' );
  HTP.P( '<IMG SRC="/' || P_IMG || '" WIDTH="' ||P_WIDTH || '">' );
  HTP.P( '</BODY>' );
  HTP.P( '</HTML>' );
END SHOW_IMG;
/
プロシージャが作成されました。

ご覧のように大変簡単なプロシージャですね。

このSHOW_IMGというプロシージャには、パラメータとして、P_IMGと、P_WIDTHを持たせました(1行目)。それぞれ、イメージファイル名と表示幅という意味です。

18行目をご覧ください。それらのパラメータで、前回ご解説したイメージタグを生成します。例えば、P_IMGが「flower.png」、P_WIDTHが「200」だとすると、以下のようにイメージタグが生成されます。

<IMG SRC="/flower.png" WIDTH="200">

これにより、flower.pngというイメージファイルが表示幅200でブラウザに表示されます。もちろんこのイメージファイルは前回ご紹介したように、Oracle XML DBの領域にアップロードされている必要があります。

では実際にイメージを表示してみましょう。

バックナンバー第103回「WEBアプリ作成(1) (Oracle DBとPL/SQLだけで、即、WEBアプリ)」の設定どおりであれば、ブラウザに以下のURLを指定します。

http://localhost:8080/dad/show_img?p_img=flower.png&p_width=200

ログインを求められたら、SCOTTユーザ名とパスワードを入力してください。

以前、北海道の野付半島で撮った写真です。写真の腕は下手ですがきれいな花でしょう?

表示幅を200から500に拡大してみましょう。

拡大も縮小も自由自在ですね。

これで、イメージファイルを使ってWEBアプリケーションをきれいに飾ることができるわけです。

では今回はここまでにしたいと思います。

次回は話題を変えて、複数のユーザで、WEBアプリを共有する方法について解説します。
例えば、本メルマガではSCOTTというデータベースユーザでWEBアプリ(PL/SQLプロシージャ)を作成しておりますが、他のデータデーベースユーザでSCOTTユーザのWEBアプリを使うときにどのような設定が必要であるかをご紹介します。

それではご期待ください。

先頭へ戻る