アプリケーション
アップロード
ファイルをアップロードするアプリケーションを作成します。ファイルの中身を見ない 通常のアップロードのみなら簡単に作ることが出来ます。 まずアップロード用の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以下の処理を行います。