summaryrefslogtreecommitdiff
path: root/imguploader.py
diff options
context:
space:
mode:
Diffstat (limited to 'imguploader.py')
-rw-r--r--imguploader.py54
1 files changed, 54 insertions, 0 deletions
diff --git a/imguploader.py b/imguploader.py
new file mode 100644
index 0000000..1b59754
--- /dev/null
+++ b/imguploader.py
@@ -0,0 +1,54 @@
+#!D:/Programs/python3/python.exe
+# -*- coding: utf-8 -*-
+import cgi, cgitb
+import pymysql
+import sys, codecs
+import configparser, codecs
+import connect
+from connect import Connect
+import config
+from config import Config
+import path
+from path import Path
+import time
+import os
+sys.stdout = codecs.getwriter('utf8')(sys.stdout.buffer)
+
+form = cgi.FieldStorage()
+
+fileobj = form['upload']
+callback = form.getvalue("CKEditorFuncNum")
+fname, fext = os.path.splitext(fileobj.filename)
+
+def randname():
+ return int(time.time());
+
+rnd_name = '%s%s' % (randname(), fext)
+filepath = Path.imgpath(rnd_name)
+
+# 检查路径是否存在,不存在则创建
+dirname = os.path.dirname(filepath)
+url = ""
+error = ""
+if not os.path.exists(dirname):
+ try:
+ os.makedirs(dirname)
+ except:
+ error = 'ERROR_CREATE_DIR'
+elif not os.access(dirname, os.W_OK):
+ error = 'ERROR_DIR_NOT_WRITEABLE'
+if not error:
+ open(filepath, 'wb').write(fileobj.file.read())
+ #url = url_for('static', filename='%s/%s' % ('upload', rnd_name))
+ url = Path.img(rnd_name)
+
+res = """
+<html>
+<script type="text/javascript">
+ window.parent.CKEDITOR.tools.callFunction(%s, '%s', '%s');
+</script>
+</html>
+""" % (callback, url, error)
+
+print("Content-type:text/html\n")
+print(res)