請(qǐng)問一下,為什么我這里設(shè)置了上傳格式的限制,然后ID也對(duì)應(yīng)了dr_ID 然后為什么我上傳圖片的時(shí)候比如jpg也還可以上傳成功啊,。
表單代碼:
<div class="layui-form-item layui-form-text">
<label class="layui-form-label col-md-2">*</label>
<div style="margin-left: 110px;text-align: left;" class="layui-upload">
<input type="hidden" name="data[jlsc]" lay-verify="head" id="dr_jlsc" value="">
<button type="button" class="layui-btn layui-btn-primary" id="upload">
<i class="layui-icon"></i> 請(qǐng)上傳你的簡(jiǎn)歷(僅支持pdf/doc/docx格式)
</button>
</div>
</div>JS代碼部分:
//layui觸發(fā)上傳按鈕---簡(jiǎn)歷上傳//
upload.render({
elem: '#upload',
url: '/index.php?s=ltss&c=shangchuan&m=upload',
field: "file_data",
data: {
file_data: function(){
return $('#upload').val();
},
{csrf_token()} : "{csrf_hash()}"
},
before: function(obj){
//預(yù)讀本地文件示例,不支持ie8
obj.preview(function(index, file, result){
});
},
done: function(res){
if (!res.id){
return layer.msg('<span style="color: #fff">'+res.msg+'</span>');
}else {
if(res.code == 1){
$("#head").attr("value", res.id);
return layer.msg('<span style="color: #fff">上傳成功</span>');
}else{
return layer.msg('<span style="color: #fff">上傳失敗,請(qǐng)重試!</span>');
}
}
},
error: function(){
//請(qǐng)求異?;卣{(diào)
}
});PHP代碼部分:
<?php namespace Phpcmf\Controllers;
/**
* 二次開發(fā)時(shí)可以修改本文件,不影響升級(jí)覆蓋
*/
class Shangchuan extends \Phpcmf\Home\Module
{
public function upload() {
$files = $this->request->getFiles();
$p['exts'] = $files['file_data']->getClientExtension();
$p['size'] = 100;
// 驗(yàn)證上傳權(quán)限
$rt = \Phpcmf\Service::L('upload')->upload_file([
'path' => '',
'form_name' => 'file_data',
'file_exts' => @explode(',', $p['exts']),
'file_size' => (int)$p['size'] * 1024 * 1024,
'attachment' => \Phpcmf\Service::M('Attachment')->get_attach_info(),
]);
if (!$rt['code']) {
exit(dr_array2string($rt));
}
// 附件歸檔
$data = \Phpcmf\Service::M('Attachment')->save_data($rt['data']);
if (!$data['code']) {
exit(dr_array2string($data));
}
// 上傳成功
if (IS_API_HTTP) {
$data['data'] = [
'id' => $data['code'],
'url' => $rt['data']['url'],
];
exit(dr_array2string($data));
} else {
exit(dr_array2string(['code' => 1, 'msg' => dr_lang('上傳成功'), 'id' => $data['code'], 'info' => $rt['data']]));
}
}
}后臺(tái)上傳字段部分:

$p['exts'] = $files['file_data']->getClientExtension(); $p['size'] = 100; // 驗(yàn)證上傳權(quán)限 $rt = \Phpcmf\Service::L('upload')->upload_file([ 'path' => '', 'form_name' => 'file_data', 'file_exts' => @explode(',', $p['exts']), 'file_size' => (int)$p['size'] * 1024 * 1024, 'attachment' => \Phpcmf\Service::M('Attachment')->get_attach_info(), ]);你這個(gè)寫法是,任意擴(kuò)展名都可以上傳,看了你的代碼,對(duì)于你來說限制擴(kuò)展名應(yīng)該不會(huì)是難事
開源是一種精神,但不是義務(wù),幫忙是情分,不幫也不要抱怨,建議大家多研究代碼、多閱讀代碼、多翻閱社區(qū)歷史問題!
擴(kuò)展名寫上
如果驗(yàn)證了你這個(gè),確實(shí)他支持驗(yàn)證了。
但是我又上傳正確格式時(shí)候 他又這么顯示,是什么原因啊
回復(fù)@ibuc2t