PHPを使用してファイルをアップロードしようとしましたが、関連する問題がいくつか発生しました。

WBOY
リリース: 2016-06-13 13:39:07
オリジナル
911 人が閲覧しました

php を使用してファイルをアップロードしようとしましたが、いくつかの問題が発生しました
インターネット上の例に従って php コードを作成すれば問題ありません。

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<form enctype="multipart/form-data"action="demo2.php"method="post">
<input type="hidden" name="MAX_FILE_SIZE"value="1000000"/>
file upload: <input type="file" name="userfile"/>
<input type="submit" value="上传"/>
</form>

ログイン後にコピー

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<?php
    //接受上传文件
    //$_FILES
    print_r($_FILES);
    
    if(is_uploaded_file($_FILES['userfile']['tmp_name'])){
        //echo'upload file, found,wait for the moving';
        move_uploaded_file($_FILES['userfile']['tmp_name'],'uploads/'.$_FILES['userfile']['name']);
    }else{
        echo'cannot find file';
    }

?>

ログイン後にコピー

出力は
Array ( [userfile] => Array ( [name] => unnamed.jpg [type] => image/pjpeg [tmp_name] です] => /tmp /phpdruvC1 [エラー] => 0 [サイズ] => 1059 ) 警告: move_uploaded_file(uploads/Unnamed.jpg): ストリームを開けませんでした: /disks/diskh/zco/ でアクセス許可が拒否されました。 maql2/public_html/test /test/demo2.php の 8 行目 呼び出しスタック: 0.0001 329800 1. {main}() /disks/diskh/zco/maql2/public_html/test/test/demo2.php:0 0.0001 329888 2. move_uploaded_file() /disks /diskh/zco/maql2/public_html/test/test/demo2.php:8 警告: move_uploaded_file(): '/tmp/phpdruvC1' を /disks/ の 'uploads/Unnamed.jpg' に移動できませんdiskh/zco/maql2/public_html/test/test/demo2.php 行 8 コールスタック: 0.0001 329800 1. {main}() /disks/diskh/zco/maql2/public_html/test/test/demo2.php:0 0.0001 329888 2. move_uploaded_file() /disks/diskh/zco/maql2/public_html/test/test/demo2.php:8

明らかに move_uploaded_file は画像を移動できず、ストリームを開くことができません。

学校ではWinSCPを使用しているため、ファイルが学校のサーバーに置かれているのだと思います
これがアップロードできない原因だと思いますが、解決方法をご存知の方はいらっしゃいますか?

------解決策----------------------
ファイルのアクセス許可は確認されましたか?
------解決策---------
ファイルパスを確認してください
------解決策----------------------
/disks/diskh/zco/maql2/public_html /test/test/uploads ディレクトリが存在しないか、書き込み可能ではありません
ファイル システムは中国語の名前をサポートしていません
------解決策---------
アクセス許可が

で拒否されましたまたは、アクセスしている場所に書き込み権限が存在しない可能性もあります
------解決策---------
警告: move_uploaded_file(uploads/test1.jpg) :ストリームを開けませんでした:


パスの問題をチェックして、パスが書き込み可能で存在することを確認することに集中してください。この機能は、ディレクトリ

の場合、ディレクトリの作成には役立ちません。インクルードされて実行される場合は、絶対パスを使用することをお勧めします。
-----解決策---------
画像情報がアップされているのでこれですまず、すべてのディレクトリが存在するかどうかを確認する必要があります。Move_uploaded_file() はディレクトリを作成できません。次に、アップロードしたパスが正しいかどうかを確認します。さらに、同じサーバー上にあるのかどうかなどの疑問もあります。
------解決策---------
ファイルパスの問題
------解決策---------
ファイルパスの問題
------解決策---------

$ folder=$_SERVER["DOCUMENT_ROOT"]."/uploads/";//前提条件として、サイトのルート ディレクトリにアップロード フォルダーが存在する必要があります。
chmod($folder,0777);

if(is_uploaded_file($_FILES['userfile']['tmp_name'])){

move_uploaded_file($_FILES['userfile']['tmp_name'],$folder.$_FILES['userfile '] ['name']);
}else{
echo'ファイルが見つかりません';
}

?>
------解決策---------
すべてのエラー プロンプトを開いて新聞を読んでください。何が問題ですか
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!