Skip to content

Commit 0c63163

Browse files
committed
增加初始化设置方法以及后端示例代码等
1 parent c04cb73 commit 0c63163

File tree

6 files changed

+105
-8
lines changed

6 files changed

+105
-8
lines changed

README.md

Lines changed: 49 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
<textarea name="txtContent" id="txtContent" style="width:500px;height:200px;"></textarea>
2020

2121
<script>
22-
$("#txtContent").pasteUploadImage();//bind textarea
22+
$("#txtContent").pasteUploadImage("demo-upload.php");//bind textarea
2323
</script>
2424
</body>
2525
</html>
@@ -40,7 +40,7 @@
4040
<textarea name="mceContent" id="mceContent"></textarea>
4141

4242
<script>
43-
$("#txtContent").pasteUploadImage();
43+
$("#txtContent").pasteUploadImage("demo-upload.php");
4444
4545
tinymce.init({
4646
selector: '#mceContent',
@@ -64,6 +64,8 @@
6464

6565
后端处理:
6666

67+
Java版:
68+
6769
```cs
6870
public class ImageUploaderController : Controller
6971
{
@@ -104,6 +106,51 @@ public class AllowCorsAttribute : ActionFilterAttribute
104106
}
105107
```
106108

109+
php版:
110+
111+
```php
112+
<?php
113+
function upload_handle (){
114+
$result=array ("success"=>false,"message"=>"Null");
115+
$file_size_limit=300*1024; // 300KB
116+
if (in_array($_FILES["imageFile"]["type"],array ("image/gif","image/jpeg","image/pjpeg","image/png"))){
117+
if ($_FILES["imageFile"]["error"]>0){
118+
$result['message']="error";
119+
}
120+
elseif ($_FILES["imageFile"]["size"]>$file_size_limit){
121+
$result['message']="File too large";
122+
}else {
123+
$file_name="upload/".md5_file($_FILES["imageFile"]["tmp_name"]).str_replace("image/",".",$_FILES["imageFile"]["type"]);
124+
if (!file_exists($file_name)){
125+
move_uploaded_file($_FILES["imageFile"]["tmp_name"],$file_name);
126+
}
127+
$result['success']=true;
128+
$result['message']=$file_name;
129+
}
130+
}else {
131+
$result['message']="Invalid file";
132+
}
133+
return $result;
134+
}
135+
136+
$origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : '';
137+
138+
$allow_origin = array(
139+
'http://sub1.example.com',
140+
'http://sub2.example.com'
141+
);
142+
143+
if(in_array($origin, $allow_origin)){
144+
header('Access-Control-Allow-Origin:'.$origin); //跨域访问
145+
header("Access-Control-Allow-Credentials", "true");
146+
}
147+
148+
header('Content-type: application/json');
149+
150+
echo(json_encode(upload_handle()));
151+
?>
152+
```
153+
107154
效果展示:
108155

109156
![](http://images2015.cnblogs.com/blog/435188/201606/435188-20160603150528999-774769562.gif)

demo-upload.php

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
<?php
2+
3+
// 这只是一个示例
4+
// This is a demo
5+
6+
function upload_handle (){
7+
$result=array ("success"=>false,"message"=>"Null");
8+
$file_size_limit=300*1024; // 300KB
9+
if (in_array($_FILES["imageFile"]["type"],array ("image/gif","image/jpeg","image/pjpeg","image/png"))){
10+
if ($_FILES["imageFile"]["error"]>0){
11+
$result['message']="error";
12+
}
13+
elseif ($_FILES["imageFile"]["size"]>$file_size_limit){
14+
$result['message']="File too large";
15+
}else {
16+
$file_name="upload/".md5_file($_FILES["imageFile"]["tmp_name"]).str_replace("image/",".",$_FILES["imageFile"]["type"]);
17+
if (!file_exists($file_name)){
18+
move_uploaded_file($_FILES["imageFile"]["tmp_name"],$file_name);
19+
}
20+
$result['success']=true;
21+
$result['message']=$file_name;
22+
}
23+
}else {
24+
$result['message']="Invalid file";
25+
}
26+
return $result;
27+
}
28+
29+
$origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : '';
30+
31+
$allow_origin = array(
32+
'http://sub1.example.com',
33+
'http://sub2.example.com'
34+
);
35+
36+
if(in_array($origin, $allow_origin)){
37+
header('Access-Control-Allow-Origin:'.$origin); //跨域访问
38+
header("Access-Control-Allow-Credentials", "true");
39+
}
40+
41+
header('Content-type: application/json');
42+
43+
echo(json_encode(upload_handle()));
44+
45+
?>

demo.html

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<!DOCTYPE html>
1+
<!DOCTYPE html>
22
<html>
33
<head>
44
<title></title>
@@ -12,7 +12,9 @@
1212
<textarea name="mceContent" id="mceContent"></textarea>
1313

1414
<script>
15-
$("#txtContent").pasteUploadImage();
15+
$("#txtContent").pasteUploadImage("demo-upload.php");
16+
// 用你自己的后端处理脚本地址替换"demo-upload.php"
17+
// replace "demo-upload.php" with your backend uploader path
1618

1719
tinymce.init({
1820
selector: '#mceContent',

scripts/paste-upload-image.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
(function ($) {
22
var $this;
33
var $ajaxUrl = '';
4-
$.fn.pasteUploadImage = function (host) {
4+
$.fn.pasteUploadImage = function (ajaxUrl) {
55
$this = $(this);
6-
$host = host;
6+
$ajaxUrl = ajaxUrl;
77
$this.on('paste', function (event) {
88
var filename, image, pasteEvent, text;
99
pasteEvent = event.originalEvent;

tinymce/plugins/pasteUpload/plugin.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
/*global tinymce:true */
1212

1313
(function () {
14-
var ajaxUrl = '';
14+
var ajaxUrl = 'demo-upload.php';
15+
console.log("请在生产环境中移除这一行以及修改上面的ajaxUrl。");console.log("please remove this line and replace ajaxUrl with your backend image upload handle in product env");
1516
var loadingImage = '<img id="loadingImg" src="http://static.cnblogs.com/images/loading.gif" alt="" />';
1617

1718
tinymce.create('tinymce.plugins.PasteUploadPlugin', {

tinymce/plugins/pasteUpload/plugin.min.js

Lines changed: 3 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)