SSブログ

(罠)phpでクライアントにあるファイルをサーバーにアップロードする [プログラミング]

 暑いせいではないのですが,最近更新が滞っていました。今日はphpでクライアントにあるファイルをサーバーにアップロードするための備忘です。一個だけ罠があったもので。 まずはuploader.htmlのプログラムコード。
<!DOCTYPE html>
<html lang="ja">

<head>
<meta charset="UTF-8">
<title>あぷろだ</title>
</head>

<body>
<form action="uploader.php" method="post" enctype="multipart/form-data">
<p>
<input type="file" name="filename">
</p>
<p>
<input type="submit">
</p>
</form>
</body>

</html>

 次にuploader.phpのプログラムコード。
<?php
if(move_uploaded_file($_FILES['filename']['tmp_name'], "files/".$_FILES['filename']['name'])){
    echo "success<br/>";
} else{
    echo "false<br/>";
}
?>

 短いプログラムコードなので詳しい解説はしませんが,ワタクシが陥った罠についてコメントしておきます。phpコードの方に
"files/".

とあるのがわかりますが,これなしではうまくいきません。なぜかというと,ファイルを保存するサーバーのフォルダのパーミッションを「書き込み可能」にしないとアップロードに失敗するからです。つまり,uploader.htmlとuploader.phpをサーバーの同じフォルダにアップロードしておくことに加えて,そのフォルダにfilesフォルダを作成しておき,さらにそのフォルダのパーミッションを「777」にしておかなければなりません。おしまい。

参考: http://www.php-labo.net/tutorial/php/upload.html
nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。