POSTフォームでのファイルアップロード時「target=_blank」を指定するとIEだとファイルが空になることがある現象に悩まされています。受信側のソース(PHP)も含めて下記の通りです。
●送信側
lang
1<meta charset="utf-8"> 2<form enctype="multipart/form-data" action="sheet.php" method="post" target="_blank"> 3<input name="user_file" type="file"></input> 4<input name="user_file" type="submit">
●受信側
lang
1function save_imgfile(){ 2 $file_path = 'user_img/test.png'; 3 if (move_uploaded_file($_FILES['user_file']['tmp_name'], $file_path)) { 4 var_dump($_FILES); 5 exit(); 6 } 7} 8save_imgfile();
■結果
●Firefox、IE(target="_blank指定なし")、うまく行ったとき
array(1) { ["user_file"]=> array(5) { ["name"]=> string(8) "logo.png" ["type"]=> string(9) "image/png" ["tmp_name"]=> string(14) "/tmp/php1p0dvK" ["error"]=> int(0) ["size"]=> int(7190) } }
●IE(target="_blank"指定あり(うまく行かない場合))
array(1) { ["user_file"]=> array(5) { ["name"]=> string(8) "logo.png" ["type"]=> string(9) "image/png" ["tmp_name"]=> string(14) "/tmp/phpdCeAQM" ["error"]=> int(0) ["size"]=> int(0) } }
IEのバージョンは11.0.9600.17498です。IEのバグでしょうか?それとも私のやっていることが間違っているのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2014/12/24 00:59
2014/12/24 01:05