ここで問題が発生します。 JSを使用してファイルコントロールuserfile=document.gの値を取得します"/> ここで問題が発生します。 JSを使用してファイルコントロールuserfile=document.gの値を取得します">

ホームページ >バックエンド開発 >PHPチュートリアル >ファイルのアップロード $_FILES[] に関する質問

ファイルのアップロード $_FILES[] に関する質問

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-13 13:43:21996ブラウズ

ファイルアップロード$_FILES[]の問題について!
$_FILES["userfile"]ここで userfile はフロントエンドのコントロールの名前である必要があります


これで問題: 。 JS
を使用してファイル コントロールの値 userfile=document.getElementById("userfile").value;
を取得し、ajax
$.ajax({
を通じてバックグラウンドで処理します) url:from.attr( 'action'),
data:"HeadImg="+userfile+"",
type:"post",
dataType:"text",
success:function( data){
document.write(data);
//alert(data)
if(data=="1"){
window.location.href("home.php") ;
}
}
});
その後、バックグラウンド
$POST['HeadImg'] はユーザーファイル

の値を受け入れることができますが、
は次のように記述されますこの

move_uploaded_file( $_FILES[$POST['HeadImg']][temp_name],dirname(__FILE__).$_FILES[$POST['HeadImg']]['name']);


影響はありません。ファイルをアップロードできない場合はどうなりますか。 。

$_FILES[$POST['HeadImg']][temp_name] と書くことはできないのでしょうか?



-----解決策---------
つまり、クライアントは HTTP POST 経由でファイルをサーバーにアップロードし、サーバーの一時ディレクトリ (php.ini で設定) に保存します。ファイル アドレスは $_FILES['UpdataHeadimg']['tmp_name'] (ファイル名は暗号化されます)
move_uploaded_file() の機能は、一時ディレクトリ内のファイルを新しいディレクトリに移動することに限定されています。また、サーバーはクライアントのファイルを積極的に読み取ることができないため、これがクライアントからサーバーにファイルをアップロードする唯一の方法です。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。