Browse Source

用户自定义字段中图片、附件上传问题修复

tags/6.2.5
tianya 2 years ago
parent
commit
54bc71e94d
7 changed files with 99 additions and 34 deletions
  1. +2
    -1
      src/apps/diy.php
  2. +38
    -0
      src/static/web/js/diy.js
  3. +39
    -0
      src/static/web/js/user.js
  4. +12
    -22
      src/system/customfields.func.php
  5. +2
    -1
      src/theme/plus/post_diyform.htm
  6. +5
    -9
      src/user/api.php
  7. +1
    -1
      src/user/archives_edit.php

+ 2
- 1
src/apps/diy.php View File

@@ -77,8 +77,9 @@ if ($action == 'post') {
$bkmsg = '发布成功,请等待管理员处理'; $bkmsg = '发布成功,请等待管理员处理';
//提交后返回提交页面 //提交后返回提交页面
echo"<script>alert('提交成功');history.go(-1)</script>"; echo"<script>alert('提交成功');history.go(-1)</script>";
exit;
} }
showmsg($bkmsg, $goto);
ShowMsg($bkmsg, $goto);
} }
} }
} else if ($action == 'list') { } else if ($action == 'list') {


+ 38
- 0
src/static/web/js/diy.js View File

@@ -0,0 +1,38 @@
function SelectImage(sform,stype) {
let s = sform.split(".");
if (s.length === 2) {
let frm = document.getElementsByName(s[0]);
let ipt = document.getElementsByName(s[1]);
let tmp = document.createElement("input");
tmp.id = 'field'+s[1];
tmp.type = "file";
tmp.style.display = 'none';
if ($(`#${tmp.id}`).length === 0) {
$(frm).append(tmp);
}
$(`#${tmp.id}`).click();
$(`#${tmp.id}`).off('change').change(function (val) {
const f = val.target.files[0];
var formData = new FormData();
var fileData = f;
formData.append('file', fileData);
$.ajax({
url: '../user/api.php?action=upload&type=litpic',
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function (result) {
if (result.code === 0) {
$(ipt).val(result.data);
} else {
ShowMsg("文件上传失败,错误原因:"+result.msg);
}
},
error: function (xhr, status, error) {
ShowMsg("文件上传失败");//处理上传失败后的回调
}
});
})
}
}

+ 39
- 0
src/static/web/js/user.js View File

@@ -8,4 +8,43 @@ function checkSubmit(t) {
ShowMsg("请您选择文档所属栏目"); ShowMsg("请您选择文档所属栏目");
return false; return false;
} }
}

function SelectImage(sform,stype) {
let s = sform.split(".");
if (s.length === 2) {
let frm = document.getElementsByName(s[0]);
let ipt = document.getElementsByName(s[1]);
let tmp = document.createElement("input");
tmp.id = 'field'+s[1];
tmp.type = "file";
tmp.style.display = 'none';
if ($(`#${tmp.id}`).length === 0) {
$(frm).append(tmp);
}
$(`#${tmp.id}`).click();
$(`#${tmp.id}`).off('change').change(function (val) {
const f = val.target.files[0];
var formData = new FormData();
var fileData = f;
formData.append('file', fileData);
$.ajax({
url: 'api.php?action=upload&type=litpic',
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function (result) {
if (result.code === 0) {
$(ipt).val(result.data);
} else {
ShowMsg("文件上传失败,错误原因:"+result.msg);
}
},
error: function (xhr, status, error) {
ShowMsg("文件上传失败");//处理上传失败后的回调
}
});
})
}
} }

+ 12
- 22
src/system/customfields.func.php View File

@@ -104,23 +104,11 @@ function GetFormItem($ctag, $admintype = 'admin')
$nowtime = GetDateTimeMk(time()); $nowtime = GetDateTimeMk(time());
$innertext = "<input type=\"text\" name=\"$fieldname\" value=\"$nowtime\" id=\"$fieldname\" class=\"form-control admin-input-md\">"; $innertext = "<input type=\"text\" name=\"$fieldname\" value=\"$nowtime\" id=\"$fieldname\" class=\"form-control admin-input-md\">";
} else if ($fieldType == 'img' || $fieldType == 'imgfile') { } else if ($fieldType == 'img' || $fieldType == 'imgfile') {
if ($admintype == 'diy') {
$innertext = "<input type='file' name='$fieldname' id='$fieldname' class='form-control admin-input-md'>";
} else {
$innertext = "<input type='text' name='$fieldname' id='$fieldname' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm' value='浏览' onClick=\"SelectImage('form1.$fieldname','big')\">";
}
$innertext = "<input type='text' name='$fieldname' id='$fieldname' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm' value='浏览' onClick=\"SelectImage('addcontent.$fieldname','big')\">";
} else if ($fieldType == 'media') { } else if ($fieldType == 'media') {
if ($admintype == 'diy') {
$innertext = "<input type='hidden' name='$fieldname' id='$fieldname' value=''> 不支持类型";
} else {
$innertext = "<input type='text' name='$fieldname' id='$fieldname' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm' value='浏览' onClick=\"SelectMedia('form1.$fieldname')\">";
}
$innertext = "<input type='text' name='$fieldname' id='$fieldname' class='form-control admin-input-md' placeholder='请输入多媒体文件地址'>";
} else if ($fieldType == 'addon') { } else if ($fieldType == 'addon') {
if ($admintype == 'diy') {
$innertext = "<input type='file' name='$fieldname' id='$fieldname' class='form-control admin-input-md'>";
} else {
$innertext = "<input type='text' name='$fieldname' id='$fieldname' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm' value='浏览' onClick=\"SelectSoft('form1.$fieldname')\">";
}
$innertext = "<input type='text' name='$fieldname' id='$fieldname' class='form-control admin-input-md' placeholder='请输入附件地址'>";
} else if ($fieldType == 'int' || $fieldType == 'float') { } else if ($fieldType == 'int' || $fieldType == 'float') {
$dfvalue = ($ctag->GetAtt('default') != '' ? $ctag->GetAtt('default') : '0'); $dfvalue = ($ctag->GetAtt('default') != '' ? $ctag->GetAtt('default') : '0');
$innertext = "<input type='text' name='$fieldname' id='$fieldname' class='form-control admin-input-xs' value='$dfvalue'>"; $innertext = "<input type='text' name='$fieldname' id='$fieldname' class='form-control admin-input-xs' value='$dfvalue'>";
@@ -230,7 +218,7 @@ function GetFieldValue($dvalue, $dtype, $aid = 0, $job = 'add', $addvar = '', $a
CloseFtp(); CloseFtp();
return $filename; return $filename;
} else if ($dtype == 'img' || $dtype == 'imgfile') { } else if ($dtype == 'img' || $dtype == 'imgfile') {
if (preg_match("#[\\|/]uploads[\\|/]userup#", $dvalue)) return $dvalue;
if (preg_match("#[\\|/]static[\\|/]userup#", $dvalue)) return $dvalue;
if ($admintype == 'diy') { if ($admintype == 'diy') {
$iurl = MemberUploads($fieldname, '', 0, 'image', '', -1, -1, false); $iurl = MemberUploads($fieldname, '', 0, 'image', '', -1, -1, false);
return $iurl; return $iurl;
@@ -413,20 +401,22 @@ function GetFormItemValue($ctag, $fvalue, $admintype = 'admin', $fieldname = '')
$fvalue = ""; $fvalue = "";
} else { } else {
$ntag = $ndtp->GetTag("img"); $ntag = $ndtp->GetTag("img");
$fvalue = trim($ntag->GetInnerText());
if (!empty($ntag)) {
$fvalue = trim($ntag->GetInnerText());
}
} }
$innertext = "<input type='text' name='$fieldname' value='$fvalue' id='$fieldname' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm' value='浏览' onClick=\"SelectImage('form1.$fieldname','big')\">";
$innertext = "<input type='text' name='$fieldname' value='$fvalue' id='$fieldname' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm' value='浏览' onClick=\"SelectImage('addcontent.$fieldname','big')\">";
} else if ($ftype == "imgfile") { } else if ($ftype == "imgfile") {
$innertext = "<input type='text' name='$fieldname' value='$fvalue' id='$fieldname' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm' value='浏览' onClick=\"SelectImage('form1.$fieldname','big')\">";
$innertext = "<input type='text' name='$fieldname' value='$fvalue' id='$fieldname' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm' value='浏览' onClick=\"SelectImage('addcontent.$fieldname','big')\">";
} else if ($ftype == "media") { } else if ($ftype == "media") {
$innertext = "<input type='text' name='$fieldname' value='$fvalue' id='$fieldname' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm'value='浏览' onClick=\"SelectMedia('form1.$fieldname')\">";
$innertext = "<input type='text' name='$fieldname' value='$fvalue' id='$fieldname' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm'value='浏览' onClick=\"SelectMedia('addcontent.$fieldname')\">";
} else if ($ftype == "addon") { } else if ($ftype == "addon") {
$innertext = "<input type='text' name='$fieldname' id='$fieldname' value='$fvalue' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm' value='浏览' onClick=\"SelectSoft('form1.$fieldname')\">";
$innertext = "<input type='text' name='$fieldname' id='$fieldname' value='$fvalue' class='form-control admin-input-md'> <input type='button' name='".$fieldname."_bt' class='btn btn-success btn-sm' value='浏览' onClick=\"SelectSoft('addcontent.$fieldname')\">";
} else if ($ftype == "int" || $ftype == "float") { } else if ($ftype == "int" || $ftype == "float") {
$innertext = "<input type='text' name='$fieldname' id='$fieldname' class='form-control admin-input-xs' value='$fvalue'>"; $innertext = "<input type='text' name='$fieldname' id='$fieldname' class='form-control admin-input-xs' value='$fvalue'>";
} else if ($ftype == "relation") { } else if ($ftype == "relation") {
$channel = ($ctag->GetAtt('channel') == "") ? "1" : $ctag->GetAtt('channel'); $channel = ($ctag->GetAtt('channel') == "") ? "1" : $ctag->GetAtt('channel');
$innertext = "<textarea name='$fieldname' id='$fieldname' class='form-control admin-textarea-sm'>$fvalue</textarea><br><button type='button' class='btn btn-success btn-sm' onclick='SelectArcList(\"form1.$fieldname\", $channel);'>选择关联文档</button>";
$innertext = "<textarea name='$fieldname' id='$fieldname' class='form-control admin-textarea-sm'>$fvalue</textarea><br><button type='button' class='btn btn-success btn-sm' onclick='SelectArcList(\"addcontent.$fieldname\", $channel);'>选择关联文档</button>";
if ($ctag->GetAtt('automake') == 1) { if ($ctag->GetAtt('automake') == 1) {
$innertext .= "<input type='hidden' name='automake[$fieldname]' value='1'>"; $innertext .= "<input type='hidden' name='automake[$fieldname]' value='1'>";
} }


+ 2
- 1
src/theme/plus/post_diyform.htm View File

@@ -8,6 +8,7 @@
<link rel="stylesheet" href="<?php echo $cfg_cmsurl;?>/static/web/font/css/font-awesome.min.css"> <link rel="stylesheet" href="<?php echo $cfg_cmsurl;?>/static/web/font/css/font-awesome.min.css">
<link rel="stylesheet" href="<?php echo $cfg_cmsurl;?>/static/web/css/style.css"> <link rel="stylesheet" href="<?php echo $cfg_cmsurl;?>/static/web/css/style.css">
<script src="<?php echo $cfg_cmsurl;?>/static/web/js/jquery.min.js"></script> <script src="<?php echo $cfg_cmsurl;?>/static/web/js/jquery.min.js"></script>
<script src="<?php echo $cfg_cmsurl;?>/static/web/js/diy.js"></script>
</head> </head>
<body> <body>
<?php pasterTempletDiy('top.htm');?> <?php pasterTempletDiy('top.htm');?>
@@ -15,7 +16,7 @@
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<h4 class="mb-3"><?php echo $diy->name;?>发布</h4> <h4 class="mb-3"><?php echo $diy->name;?>发布</h4>
<form action="<?php echo $cfg_cmspath;?>/apps/diy.php" enctype="multipart/form-data" method="post">
<form name="addcontent" action="<?php echo $cfg_cmspath;?>/apps/diy.php" enctype="multipart/form-data" method="post">
<input type="hidden" name="action" value="post"> <input type="hidden" name="action" value="post">
<input type="hidden" name="diyid" value="<?php echo $diyid;?>"> <input type="hidden" name="diyid" value="<?php echo $diyid;?>">
<input type="hidden" name="do" value="2"> <input type="hidden" name="do" value="2">


+ 5
- 9
src/user/api.php View File

@@ -60,15 +60,11 @@ if ($action === 'is_need_check_code') {
)); ));
} else if ($action === 'upload') { } else if ($action === 'upload') {
if (!$cfg_ml->IsLogin()) { if (!$cfg_ml->IsLogin()) {
if ($format === 'json') {
echo json_encode(array(
"code" => -1,
"msg" => "未登录",
"data" => null,
));
} else {
echo "";
}
echo json_encode(array(
"code" => -1,
"msg" => "未登录",
"data" => null,
));
exit; exit;
} }
$target_dir = "uploads/";//上传目录 $target_dir = "uploads/";//上传目录


+ 1
- 1
src/user/archives_edit.php View File

@@ -95,7 +95,7 @@ if (empty($dopost)) {
$artUrl = MakeArt($aid, TRUE); $artUrl = MakeArt($aid, TRUE);
if ($artUrl == '') $artUrl = $cfg_phpurl."/view.php?aid=$aid"; if ($artUrl == '') $artUrl = $cfg_phpurl."/view.php?aid=$aid";
//返回成功信息 //返回成功信息
$msg = "请选择您的后续操作:<a href='archives_add.php?cid=$typeid&channelid=$channelid' class='btn btn-success btn-sm'>发布自定义文档</a><a href='archives_edit.php?channelid=$channelid&aid=".$aid."' class='btn btn-success btn-sm'>修改自定义文档</a><a href='$artUrl' target='_blank'>浏览自定义文档</a><a href='content_list.php?channelid=$channelid' class='btn btn-success btn-sm'>管理自定义文档</a>";
$msg = "请选择您的后续操作:<a href='archives_add.php?cid=$typeid&channelid=$channelid' class='btn btn-success btn-sm'>发布自定义文档</a><a href='archives_edit.php?channelid=$channelid&aid=".$aid."' class='btn btn-success btn-sm'>修改自定义文档</a><a class='btn btn-success btn-sm' href='$artUrl' target='_blank'>浏览自定义文档</a><a href='content_list.php?channelid=$channelid' class='btn btn-success btn-sm'>管理自定义文档</a>";
$wintitle = "成功修改自定义文档"; $wintitle = "成功修改自定义文档";
$wecome_info = "文档管理::修改自定义文档"; $wecome_info = "文档管理::修改自定义文档";
$win = new OxWindow(); $win = new OxWindow();


Loading…
Cancel
Save