Quantcast
Channel: nacika » PHP
Viewing all articles
Browse latest Browse all 6

PHPで画面推移なしでファイルをアップロードしてその情報を親ウィンドウの変数に代入する

$
0
0

Javascript側

function uploadFile() {
    $("#form").submit();    //jQuery
    return false;
}

window.hoge = [];
<form id="form" action="/upload" method="post" enctype="multipart/form-data" target="iframe">
<input name="upload" type="file" onchange="uploadFile();">
</form>
<iframe name="iframe"></iframe>

PHP側

$upload_dir = "/www/var/html/public/";    //ディレクトリはあらかじめ作っておく。Windowsの場合C:\から
move_uploaded_file($_FILES['upload']['tmp_name'], $upload_dir . $_FILES['upload']['name']);
chmod($upload_dir . $_FILES['upload']['name'], 0666);
parent.window.formdata[0] = "<?php print($_FILES['upload']['name']); ?>";

テストはしてないので間違いがあるかもしれません。window.formdataのプロパティとしてグローバル配列変数を作成し、その結果を代入します。ただ、セキュリティの観点からなのかイベントの発火は何度やってもだめでした。親ウィンドウの変数に代入するくらいしかできないようです。


Viewing all articles
Browse latest Browse all 6

Trending Articles