単に画像ファイルをアップロードさせるだけなのですが、何故か出来ません。プログラミングに関しては初心者ですので、どなたかアドバイスをよろしくお願いします。
■アップロードフォーム用のHTMLファイルです↓ ファイル名=gazou_upload.html
<html>
<head>
<title>ファイルのアップロード</title>
</head>
<body>
<form method="POST" action="gazou_upload.php" enctype="multipart/form-data">
<input type="hidden" name="max_file_size" value="1000000" >
<input type="file" name="userfile"><br><br>
<input type="submit" value="アップロード">
</body>
</html>
■受け取ったファイルをサーバ上のディレクトリに移動するPHPファイルです↓ ファイル名=gazou_upload.php
<?php
if (move_uploaded_file($_FILES['userfile']['tmp_name'], "/image/")) {
print "ファイルアップロード成功";
print_r($_FILES);
} else {
print "ファイルアップロード失敗"."<br>";
print_r($_FILES);
}
?>
■ファイルを保存するディレクトリ
上のファイルと同じ階層で フォルダ名が image
パーミッションは3つとも 707 にしました。
パーミッションが拒否されたというメッセージだと思うので、パーミッションを変更したのですがダメでした・・ちなみにサーバはロリポップを使っていて、777と666はエラーになると注意書きがあったので、707にしました。かなりハマっていて困っています。回答もしくはアドバイスをどなたかよろしくお願いします。
No.1ベストアンサー
- 回答日時:
if (move_uploaded_file($_FILES['userfile']['tmp_name'], "/image/")) {
↑の行のmove_uploaded_fileの二つ目の引数はフォルダ+ファイル名で指定します。
(ファイル名がtest.txtなら/image/text.txt)
あと、is_uploaded_fileで悪意のあるユーザーが関係ないファイルを勝手に操作しないようにチェックした方がいいですよん。
参考URL:http://php.s3.to/man/function.is-uploaded-file.h …
この回答への補足
修正しましたが、うまく動作してくれません・・2時間試行錯誤したのですが・・どなたか助言をお願いします。。
以下が修正したgazou_upload.phpのファイルです。
<?php
// アップロード先ディレクトリ+ファイル名の指定
$uploaddir = '/image/';
$uploadfile = $uploaddir. $_FILES['userfile']['name'];
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
print "ファイルアップロード成功";
print_r($_FILES);
} else {
print "ファイルアップロード失敗"."<br>";
print_r($_FILES);
}
?>
■結果
Warning: move_uploaded_file(/image/P1010851.jpg): failed to open stream: No such file or directory in /home/sites/lolipop.jp/users/**********/web/gazou_upload.php on line 8
Warning: move_uploaded_file(): Unable to move '/tmp/phpuqa8g2' to '/image/P1010851.jpg' in /home/sites/lolipop.jp/users/***********/web/gazou_upload.php on line 8
ファイルアップロード失敗
Array ( [userfile] => Array ( [name] => P1010851.jpg [type] => image/pjpeg [tmp_name] => /tmp/phpuqa8g2 [error] => 0 [size] => 84509 ) )
あっ、そうだったんですか・・・わかりました!もうちょっと落ち着いてサンプルなどを見る必要がありますね。すごく初歩的な質問に丁寧に回答してくださいましてありがとうございました!自分では変なツボにハマってしまって・・エラーメッセージではパーミッションディナイって出てるし・・本当に助かりました!!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP imageフォルダに、画像をリサイズして保存する時のファイル名を変更したい 1 2023/05/30 11:39
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
onedrive にexcelファイルをア...
-
BASP21のFTPで日本語ファイル名...
-
ftpでアップロードが出来ない
-
10MB以内のJPG画像
-
画像アップロードについて
-
VBでクラウドストレージにア...
-
F F FTPにアップロードしたので...
-
ファイルサイズがpost_max_size...
-
大きいファイルのアップロード...
-
ファイルのアップロードを行う...
-
携帯からファイルアップロード...
-
アップロードのボタンが有りま...
-
ファイルのアップロード$_FILES...
-
unlinkでどうしてもファイルが...
-
one drive のアップロード失敗...
-
PHPにてWebサーバー内データを...
-
透過PNGが透過されない!!
-
CFileDialogの最初のディレクト...
-
【file_exists】ファイルが存在...
-
フォントの色を変えるには?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
onedrive にexcelファイルをア...
-
ファイルアップロードの上限を...
-
youtubeに音声のみのmp4ファイ...
-
FTPClientで転送結果(OKかFAIL)
-
one drive のアップロード失敗...
-
unlinkでどうしてもファイルが...
-
ファイルをGET送信でアップロー...
-
ftpでアップロードが出来ない
-
ファイルサイズがpost_max_size...
-
PHPでxmlをAPIに送信する方法(P...
-
aws cloud9というものを使って...
-
ファイルアップロードについて...
-
DUMPした巨大SQLファイルをイン...
-
全角ファイル名をアップロード...
-
PHPMailerで大きなファイルが送...
-
SmartyでHTMLソースの変更が反...
-
Struts2 ファイルアップロード
-
ファイルアップロードしたもの...
-
画像ファイルの名前をそのままU...
-
サーバーにアップロードしたい
おすすめ情報