情報工学実験II 実験5   サーバサイドプログラミング

担当 鹿嶋

1.実験の目的

サーバサイドスクリプト言語の一つである,PHPを使い,サーバサイドプログラミングの基礎を学ぶ.

2.PHPによるプログラミング手順

PHP: Hypertext Preprocessorは動的なWebページを実現するためのプログラミング言語です. PHPはHTML埋め込み型のサーバサイドスクリプト言語です.
WebサーバはクライアントからリクエストされたファイルがPHPファイルであると認識すると,そのファイルを一旦PHPのシステムに渡します.PHPのシステムはファイルに書かれたスクリプトの内容に応じて処理を行い,その結果をクライアントに返します. これにより,動的なWebページを表現することができます.
PHPはスクリプト言語として分類されます.

一番単純な開発方法は,

1)テキストエディタを用いてPHPファイル,HTMLファイルを作成する. 

2)作成したPHPファイルやHTMLファイルをサーバに転送する. 

3)Webブラウザを用いて,PHPファイルを実行する. 1)に戻り,デバッグ等適切な修正を行う. 

以上です.

以下の手順に従って,PHPファイルを作成し,実行してみましょう.

[準備] 

(1)Z:\ドライブにWWWという名前のフォルダが無い場合,Z:\ドライブを開き,右クリック→新規作成→フォルダ(F)と進み,新しいフォルダを作成してください.フォルダの名前を「WWW」とします.

(2)Z:\WWW の下にexp2-5という名前のフォルダを(1)と同じ手順で作成します.ここが実験で作成した課題を格納するフォルダになります.

なお,この実験においては,上記のフォルダに作成したファイルを保存するという行為が,「2)作成したPHPファイルやHTMLファイルをサーバに転送する」という操作に相当します.ただし,外部のサーバを利用する場合,FTPなどを用いて,指定された場所に転送する必要があります.

[PHPファイルの作成と実行]

(1)右クリック→新規作成→テキストドキュメントを選択し,テキストファイルを作成します.

(2)作成したテキストファイルの名前を「sample01.php」に変更して,メモ帳などのテキストエディタで開きます.

(3)以下のコードを入力して,保存します.

   

 

(4)Webブラウザを起動し,以下のURLにアクセスします.

     http://ed.ibe.kagoshima-u.ac.jp/~sc*******/exp2-5/sample01.php     ここで,「sc*******」の部分には,皆さんのアカウント名が入ります.適宜変更してください.
 
  以下のようなページが表示されたら,成功です.

       


この実験で皆さんが学んでいる言語はサーバサイドのスクリプト言語です.プログラムはサーバ上で実行されます.この時点で上手く実行されない場合は,自分が今どこで何をしようとしているのかを良く考えてから,もう一度試してみてください.

 

課題1 以下のことについて調べてレポートで報告してください.(実験終了後で構いません)

3.PHPのの書き方

この実験では,b)のスタイルを採用して,進めていきます.以下にPHPスクリプトとHTML文を分離したスタイルでの記述例を示します.

    

なお,a)のスタイルで記述する場合には,例えば,以下のようになります.


    

全体をPHPスクリプトとして,「<?PHP」 と「?>」で囲みます.HTML文については,PHPスクリプトでの文字列として扱うために,「" "」で囲み,print コマンドで書き出します.

課題2

 

スクリプトの中に記述する説明文を”コメント”といいます.このコメントは実行時には無視して処理が行われますから,何を書いてもエラーにはなりません.一般的に,ヘッダ部分でのプログラム名やスクリプトの製作者の名前や作成日などの情報,バージョン情報,また,変数や関数の説明,デバッグ時に使う処理の内容などを記述します.

PHPでは,コメント文として,以下の2つが用意されています.

 1)  「// 」 で1行のコメント文として,記述する.
 2) 「/*」 と 「*/」で囲み,複数の行にわたるコメント文を記述する.


  

課題3

変数はプログラムの処理過程において,結果やその過程を保存するためのデータの入れ物です.変数とはPHPに限らず,全てのプログラミング言語で用いられています.PHPにおける変数には以下のルールがあります.

以下に,変数を使った簡単なプログラムを示します.

    

課題4

4.制御構造

いくつかの講義・演習等で学習したとおり,一般的なプログラミング言語は「逐次処理」,「条件分岐」,「繰返し処理」のの3つの基本的な制御構造を持ちます.これは,PHPにおいても同様です.極論するなら,この3つの構造さえ抑えておけば,どのよなプログラミング言語で書かれたソースであっても,読み進めることは可能です.

ここでは,主に「条件分岐」と「繰返し処理」の2つについて学んでいきます.

PHPでは条件分岐の処理を行うために,if 文,if〜else文,if〜elseif 〜 else文,swich文 の4つが用意されています.どれを使うかは,状況によって使い分けてください.

if文

if〜else 文

if〜elseif 〜 else文

switch 文

課題5

 

for 文

while 文

do 〜 while 文

 

課題6

 

 

5.フォーム

Webアプリケーションでは,ユーザインターフェースは絶対に欠かせないものの一つです.例えば,Webページから入力したキーワードを抽出条件として,データベースへのアクセス行い,キーワードに一致するデータ表示したり,氏名・住所などを入力してデータベースに登録するなど,さまざまな場面で必要となります.

HTMLの<HOME>タグを使い,入力フォームを作成し,作成したページから入力された値を,実際の処理を行うPHPファイルへ渡し,計算を行い結果を出力します.以下に入力フォーム用のHTMLファイルと出力用のPHPファイルを示します.

       



        

 

課題7


 

レポートについて