PHP ファイルで isset($_FILES['formFile']) を通過できないようです。常に false を返します。Ext js 4.1 を使用しています。私の目標は、これらの画像を blob に保存することです。
Extjs コード:
var fi = new Ext.FormPanel({
fileUpload: true,
width: 400,
frame: false,
autoHeight: true,
labelWidth: 40,
border: false,
margins: '10 0 0 10',
defaults: {
anchor: '95%',
allowBlank: false,
msgTarget: 'side',
border: false
},
items: [{
xtype: 'filefield',
emptyText: 'Select an image',
fieldLabel: 'Image',
id: 'formFile',
buttonCfg: {
text: '',
iconCls: 'upload-icon'
},
border: false
}],
buttons: [{
text: 'Upload',
handler: function(){
var form = this.up('form').getForm();
if(form.isValid()){
form.submit({
url: 'php/picture-upload.php',
waitMsg: 'Uploading your image...',
success: function(fi, o){
alert('succes');
}
});
}
}
}]
});
php:
if (!isset($_FILES['formFile'])) {
echo '<p>Please select a file</p>';
echo '{"success": false}';
} else {
try {
upload();
echo '<p>Thank you for submitting</p>';
} catch (Exception $e) {
echo $e->getMessage();
echo 'Sorry, could not upload file';
}
}
print_r($_FILES) の出力;
Array
(
[formFile-inputEl] => Array
(
[name] => clicla.jpg
[type] => image/jpeg
[tmp_name] => /Applications/MAMP/tmp/php/phpnUxgV3
[error] => 0
[size] => 6772
)