2

PHPを使用してiFrameの概念を使用してファイルとidnoをアップロードしたい。このコードをプロジェクトで使用しました。

このコードだけでも問題なく動作しています。ファイルをアップロードしています。しかし、それが私のプロジェクトにあるとき、それは機能していません。それを示す

未定義のインデックス myfile

(私は常に Firefox ブラウザーでテストします。)

余分なパラメータidnoも送信されていません...

しかし、同じページで HTML5 ドラッグ アンド ドロップが機能しています。

ヘルプはありますか?

これが私のコードです:

<form method="post" action="Nupload.php" enctype="multipart/form-data" class="manual" id="upload_form" target="upload_target">or
<input type="file" name="myfile" id="myfile" style="display:none" onchange="javascript:getReady();" />
<label for="file">select files from your computer...</label>
<input type="hidden" name="idno" value="2013456" />
<iframe src="Nupload.php" name="upload_target" id="upload_target" style="display:none;">    
</iframe>
</form>

脚本:

function getReady()
{
document.getElementById("upload_target").onload = uploadDone();
document.getElementById("upload_form").submit();
}

function uploadDone()
{
var content="";
var iframeId=document.getElementById("upload_target");
if (iframeId.contentDocument) {
content = iframeId.contentDocument.body.innerHTML;
} else if (iframeId.contentWindow) {
content = iframeId.contentWindow.document.body.innerHTML;
} else if (iframeId.document) {
content = iframeId.document.body.innerHTML;
}
alert(content)
}

アップロード.php

if( isset($_FILES["myfile"]) )
{
    $target = basename($_FILES["myfile"]["name"]);

    if(move_uploaded_file($_FILES["myfile"]["tmp_name"],"./temp/".$target))
    {
        $res = array("success"=>true,"file_name"=>$_FILES["myfile"]["name"],"size"=>$_FILES["myfile"]["size"]);
    }
    else
        $res = array("success"=>false,"desc"=>"no");
    echo json_encode($res);
}
4

0 に答える 0