浏览代码

上传图片功能完成

UnknownO 3 年之前
父节点
当前提交
87b37fbc35
共有 3 个文件被更改,包括 43 次插入9 次删除
  1. 2 0
      api/upload.php
  2. 33 1
      pages/submit.php
  3. 8 8
      static/main.js

+ 2 - 0
api/upload.php

@@ -31,4 +31,6 @@ if ($filename) {
     } else {
     } else {
         exit('{"code":-5, "msg":"上传失败!未知错误!", "path":""}');
         exit('{"code":-5, "msg":"上传失败!未知错误!", "path":""}');
     }
     }
+} else {
+    exit('{"code":-6, "msg":"上传失败!没有文件!", "path":""}');
 }
 }

+ 33 - 1
pages/submit.php

@@ -33,7 +33,7 @@ if ($templateMode) {
                         <textarea id="image" class="mdui-textfield-input" placeholder="https://kagamine.top/img.png"></textarea>
                         <textarea id="image" class="mdui-textfield-input" placeholder="https://kagamine.top/img.png"></textarea>
                     </div>
                     </div>
                     <div class="mdui-col-md-2 mdui-col-sm-2 mdui-col-xs-5">
                     <div class="mdui-col-md-2 mdui-col-sm-2 mdui-col-xs-5">
-                        <a href="javascript:;" id="upload" class="mdui-color-theme-accent a-upload mr10"><input type="file" name="" id="">上传文件</a>
+                        <a href="javascript:;" id="upload" class="mdui-color-theme-accent a-upload mr10"><input type="file" name="" id="upload-image">选择文件</a>
                     </div>
                     </div>
                 </div>
                 </div>
             <?php
             <?php
@@ -72,6 +72,38 @@ if ($templateMode) {
             }
             }
         }
         }
 
 
+        $("#upload").on("change", "input[type='file']", function() {
+            var data = new FormData();
+            data.append('file', $(this).prop('files')[0]);
+            $('#upload-image').attr("disabled", "disabled")
+            $("#isLoading").show(100)
+            $.ajax({
+                type: 'POST',
+                url: "<?php echo $UPLOAD_API ?>",
+                data: data,
+                cache: false,
+                processData: false,
+                contentType: false,
+                success: function(rdata) {
+                    $("#isLoading").hide(100)
+                    $("#image").val(rdata.path)
+                    $('#upload-image').removeAttr("disabled")
+                    mdui.snackbar({
+                        message: rdata.msg,
+                        position: 'right-top',
+                    })
+                },
+                error: function(data) {
+                    $("#image").val("")
+                    $('#upload-image').removeAttr("disabled")
+                    $(disableBtnId).attr("disabled", false)
+                    mdui.snackbar({
+                        message: "请求接口[upload]时,出现了一个致命错误!",
+                        position: 'right-top'
+                    })
+                }
+            })
+        });
 
 
         function imageVerification(callback) {
         function imageVerification(callback) {
             mdui.dialog({
             mdui.dialog({

+ 8 - 8
static/main.js

@@ -1,6 +1,6 @@
 function requestApi(functionName, args, callback, showResults, refreshPageWhenSuccess, disableBtnId) {
 function requestApi(functionName, args, callback, showResults, refreshPageWhenSuccess, disableBtnId) {
     $(disableBtnId).attr("disabled", true);
     $(disableBtnId).attr("disabled", true);
-    setTimeout(function () {
+    setTimeout(function() {
         $(disableBtnId).attr("disabled", false);
         $(disableBtnId).attr("disabled", false);
     }, 200000)
     }, 200000)
     $("#isLoading").show(100)
     $("#isLoading").show(100)
@@ -9,7 +9,7 @@ function requestApi(functionName, args, callback, showResults, refreshPageWhenSu
         url: '/api/' + functionName + '.php',
         url: '/api/' + functionName + '.php',
         data: args,
         data: args,
         dataType: 'json',
         dataType: 'json',
-        success: function (rdata) {
+        success: function(rdata) {
             if (showResults) {
             if (showResults) {
                 mdui.snackbar({
                 mdui.snackbar({
                     message: rdata.msg,
                     message: rdata.msg,
@@ -27,21 +27,21 @@ function requestApi(functionName, args, callback, showResults, refreshPageWhenSu
                 callback(rdata)
                 callback(rdata)
             }
             }
         },
         },
-        error: function (data) {
+        error: function(data) {
             $("#isLoading").hide(100)
             $("#isLoading").hide(100)
             $(disableBtnId).attr("disabled", false)
             $(disableBtnId).attr("disabled", false)
             mdui.snackbar({
             mdui.snackbar({
                 message: "请求接口[" + functionName + "]时,出现了一个致命错误!",
                 message: "请求接口[" + functionName + "]时,出现了一个致命错误!",
                 position: 'right-top'
                 position: 'right-top'
             })
             })
-        },
+        }
     })
     })
 }
 }
 
 
 function search() {
 function search() {
     mdui.prompt('支持从名字、表白内容中搜索', '搜索',
     mdui.prompt('支持从名字、表白内容中搜索', '搜索',
-        function (value) {
-            setTimeout(function () {
+        function(value) {
+            setTimeout(function() {
                 $.pjax({
                 $.pjax({
                     url: '/?search=' + value,
                     url: '/?search=' + value,
                     container: '#pjax-container'
                     container: '#pjax-container'
@@ -53,8 +53,8 @@ function search() {
 
 
 function jumpPage() {
 function jumpPage() {
     mdui.prompt('你要跳转到第几页?', '快速翻页',
     mdui.prompt('你要跳转到第几页?', '快速翻页',
-        function (value) {
-            setTimeout(function () {
+        function(value) {
+            setTimeout(function() {
                 $.pjax({
                 $.pjax({
                     url: '?p=' + value,
                     url: '?p=' + value,
                     container: '#pjax-container'
                     container: '#pjax-container'