アプリケーション
ファイルをアップロードするアプリケーションを作成します。ファイルの中身を見ない通常のアップロードのみなら簡単に作ることが出来ます。まずアップロード用のHTMLファイルを作ります。
<html> <head><title>uploader.html</title></head> <body> <form method="post" enctype="multipart/form-data" action="uploader.php"> <input type="file" name="upfile"> <input type="submit" value="アップロードする"> </form> </body> </html>
次にphpスクリプトです。ここではスーパーグローバル関数である$_FILEを使います。アップロードするファイルは日本語には対応してません。文字化けしてしまうので英語を使ってください。
<html> <head><title>uploader.php</title></head> <body> <p> file uploader </p> <?php $updir = "./upload/"; $filename = $_FILES['upfile']['name']; if (move_uploaded_file($_FILES['upfile']['tmp_name'], $updir.$filename) == FALSE){ print("Upload failed"); print($_FILES['upfile']['error']); } else { print("<b> $filename </b> uploaded"); } ?> </body> </html>
$updir = "./upload/";
$updirに保存するフォルダ名を代入します。「./upload」の「.」はカレントディレクトリのことでこのPHPスクリプトが置いてあるディレクトリを指します。
$filename = $_FILES['upfile']['name'];
$filenameに元のファイル名を代入します。このnameは入力フォームから入力したファイル名です。
if (move_uploaded_file($_FILES['upfile']['tmp_name'], $updir.$filename) == FALSE)
$_FILES['upfile']['tmp_name']とはサーバにアップロードされたファイルに一時的に与えられる名前です。 $updir.$filenameでディレクトリ名とファイル名を結合してともにmove_uploaded_file関数でファイルをディレクトリに移動させます。ここでif文で失敗したかを判定して失敗した場合以下のエラー文を表示し、成功したらelse以下の処理を行います。

