dna2007vxのブログ

dna2007vxのブログ

ブログの説明を入力します。

Amebaでブログを始めよう!
仮に 同一階層上に、

a.txt 
b.jpg 
c.png 
d.txtがあって、

glob関数を使って、print_r(glob("*.txt")); 
// txtファイルのみ出力すると、
Array ( [0] => a.txt [1] => d.txt ) 
のようになり、glob関数は、ファイルのUploadに使う関数になりますが、
仮にGlob関数ではなく、二つのファイル(form.html(ファイル名の参照でupload用のHP)と、
upload.php (form の action で指定したファイル)を用意し、 
下記は、upload用の「form.html」の中身 

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>sample</title>
</head>
<body><!-- form actionでupload.phpを読む --><form action="upload.php" method="post" enctype="multipart/form-data"></form>ファイル:<br><!-- name で指定したキーワード("upfile")を基に、PHPでデータを受け取ります-->
<input type="file" name="upfile" size="30"><br>
<br>
<input type="submit" value="アップロード">
</form>
</body>
</html> 

そして、上のフォームから送信されたデータを受け取るHPでPHPを実装すると、下記になります。 

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>sample</title>
</head>
<body>
<p><?php
$_FILES["upfile"]["tmp_name"] です

if (is_uploaded_file($_FILES["upfile"]["tmp_name"])) {
if (move_uploaded_file($_FILES["upfile"]["tmp_name"], "files/" . $_FILES["upfile"]["name"])) {
chmod("files/" . $_FILES["upfile"]["name"], 0644);
echo $_FILES["upfile"]["name"] . "をアップロードしました。";
} else {
echo "ファイルをアップロードできません。";
}
} else {
echo "ファイルが選択されていません。";

?></p>
</body>
</html>