GVKun编程网logo

dedecms 实现ctrl+v粘贴图片并上传、word粘贴带图片

3

本文将为您提供关于dedecms实现ctrl+v粘贴图片并上传、word粘贴带图片的详细介绍,同时,我们还将为您提供关于DedeCMS5.7标签tag长度限制的修改办法、dedecms5.7怎样在任意

本文将为您提供关于dedecms 实现ctrl+v粘贴图片并上传、word粘贴带图片的详细介绍,同时,我们还将为您提供关于DedeCMS 5.7 标签tag长度限制的修改办法、dedecms 5.7怎样在任意位置显示自由列表标题+链接、DedeCMS Error:Tag disabled:php错误的完整处理办法、DEDECMS JSON数据生成 DEDECMS JSON接口制作的实用信息。

本文目录一览:

dedecms 实现ctrl+v粘贴图片并上传、word粘贴带图片

dedecms 实现ctrl+v粘贴图片并上传、word粘贴带图片

如何做到 ueditor批量上传word图片?

1、前端引用代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

    <Meta http-equiv="Content-Type"content="text/html; charset=utf-8"/>

 

   <title>编辑器完整版实例-1.2.6.0</title>

    <script type="text/javascript"src="ueditor.config.js"charset="utf-8"></script>

    <script type="text/javascript"src="ueditor.all.js"charset="utf-8"></script>

    <link type="text/css"rel="Stylesheet"href="WordPaster/css/WordPaster.css"/>

    <link type="text/css"rel="Stylesheet"href="WordPaster/js/skygqBox.css"/>

    <scrip ttype="text/javascript"src="WordPaster/js/json2.min.js"charset="utf-8"></script>

    <scrip ttype="text/javascript"src="WordPaster/js/jquery-1.4.min.js"charset="utf-8"></script>

    <scrip ttype="text/javascript"src="WordPaster/js/WordPaster.js"charset="utf-8"></script>

    <scrip ttype="text/javascript"src="WordPaster/js/skygqBox.js"charset="utf-8"></script>

</head>

<body>

    <textarea name="后台取值的key"id="myEditor">这里写你的初始化内容</textarea>

    <script type="text/javascript">

        var pasterMgr = new WordPasterManager();

    pasterMgr.Config["PostUrl"] = "http://localhost:81/WordPaster2/WordPasterUEditor1x/PHP/upload.PHP"

    pasterMgr.Load();//加载控件

 

          UE.getEditor('myEditor',{onready:function(){//创建一个编辑器实例

              pasterMgr.SetEditor(this);

          }});

    </script>

</body>

</html>

请求

文件上传的默认请求是一个文件,作为具有“upload”字段的表单数据。

响应:文件已成功上传

当文件成功上传时的JSON响应:

uploaded- 设置为1。

fileName - 上传文件的名称。

url - 上传文件的URL。

响应:文件无法上传

uploaded- 设置为0。

error.message - 要显示给用户的错误消息。

2、粘贴word里面的图片路径是fill://D 这种格式 我理解这种是非浏览器安全的 许多浏览器也不支持

目前项目是用了一种变通的方式:

先把word上传到后台 、poi解析、存储图片 、转换html、替换图片、放到富文本框里显示

(富文本显示有个坑:没找到直接给富文本赋值的方法 要先销毁 记录下

success : function(data) {

     $('#content').attr('value',data.imagePath);

     var editor = CKEDITOR.instances["content"]; //你的编辑器的"name"属性的值

     if (editor) {

       editor.destroy(true);//销毁编辑器

      }    

     CKEDITOR.replace('content'); //替换编辑器,editorID为ckeditor的"id"属性的值

     $("#content").val(result);    //对editor赋值

     //CKEDITOR.instances.contentCkeditor.setData($("#content").text());

 }

3.接收上传的图片并保存在服务端

<?PHP

ob_start();

//201201/10

$timeDir =date("Ym")."/".date("d");

$uploadDir =dirname(__FILE__).'/upload/'.$timeDir;

$curDomain = "http://".$_SERVER["HTTP_HOST"]."/";

//相对路径 http://www.ncmem.com/upload/2012-1-10/

$relatPath = $curDomain ."WordPaster2/WordPasterUEditor1x/PHP/upload/" . $timeDir . "/";

 

//自动创建目录。upload/2012-1-10

if(!is_dir($uploadDir))

{

mkdir($uploadDir,0777,true);

}

 

//如果PHP页面为UTF-8编码,请使用urldecode解码文件名称

//$fileName = urldecode($_FILES['postedFile']['name']);

//如果PHP页面为GB2312编码,则可直接读取文件名称

$fileName = $_FILES['file']['name'];

$tmpName = $_FILES['file']['tmp_name'];

 

//取文件扩展名jpg,gif,bmp,png

$path_parts =pathinfo($fileName);

$ext = $path_parts["extension"];

$ext =strtolower($ext);//jpg,png,gif,bmp

 

//只允许上传图片类型的文件

if($ext == "jpg"

    || $ext == "jpeg"

    || $ext == "png"

    || $ext == "gif"

    || $ext == "bmp")

{

    //年_月_日_时分秒毫秒.jpg

    $saveFileName = $fileName;

 

    //xxx/2011_05_05_091250000.jpg

    $savePath = $uploadDir . "/" . $saveFileName;

 

    //另存为新文件名称

    if (!move_uploaded_file($tmpName,$savePath))

    {

exit('upload error!' . "文件名称:" .$fileName . "保存路径:" . $savePath);

    }

}

 

//输出图片路径

//$_SERVER['HTTP_HOST']   localhost:81

//$_SERVER['REQUEST_URI'] /FCKEditor2.4.6.1/PHP/test.PHP

$reqPath =str_replace("upload.PHP","",$_SERVER['REQUEST_URI']);

echo $relatPath .  $saveFileName;

header('Content-type: text/html; charset=utf-8');

header('Content-Length: ' .ob_get_length());

?>

效果展示:

 

在使用前需要配置一下,可以参考我写的这篇文章:http://blog.ncmem.com/wordpress/2019/08/07/umeditor%E7%B2%98%E8%B4%B4word%E5%9B%BE%E7%89%87/

讨论群:223813913

DedeCMS 5.7 标签tag长度限制的修改办法

DedeCMS 5.7 标签tag长度限制的修改办法

 

大家都知道默认情况下,dedecms的标签tag长度是12个字节,也就是6个汉字,哪知道在织梦5.7中,也没有改掉这个烦恼的事,可能这个设定是基于效率问题考虑的,如果更新的时候设置的长度超过这个字符,系统就会不显示这个tag。有时候需要根据实际情况修改tag的长度,下面是办法,测试可用。

1.修改数据库中表dede_tagindex 和dede_taglist的tag字段属性:varchar(12)修改为varchar(255) 。

这个步骤需要直接操作数据库。

2.修改文件:/include/helpers/archive.helper.php

查找:if(isset($tag[12]) 修改为:if(isset($tag[255]) ;

再将if(isset($tag[20]) 修改为:if(isset($tag[255]) 。

本文章网址:http://www.ppssdd.com/code/13690.html。转载请保留出处,谢谢合作!

dedecms 5.7怎样在任意位置显示自由列表标题+链接

dedecms 5.7怎样在任意位置显示自由列表标题+链接

 

dedecms 5.7怎样在任意位置显示自由列表标题+链接?

为什么会有这样的问题呢,因为找了半天没有发现织梦cms中调用自由列表的标签.在度哥上也没找到答案.那就只有自己捉摸了.下面是我用到的办法,其实是很简单的,只需要一句简单的sql代码就可以实现了

{dede:sql sql="select * From dede_freelist limit 100"} 

<a href=http://www.dede58.com/a/dedejq/"[field:listdir/]">[field:title/]</a>

{/dede:sql} 

前提是必须删除添加自由列表时地址时前面出现的 {listdir}标签.

如图:

本文章网址:http://www.ppssdd.com/code/14438.html。转载请保留出处,谢谢合作!

DedeCMS Error:Tag disabled:php错误的完整处理办法

DedeCMS Error:Tag disabled:php错误的完整处理办法

 

网站提示DedeCMS Error:Tag disabled:"php" more...!

在*新的织梦CMSdedecms5.7版本与7月15号的补丁里,官方增加了源码引擎禁用的全局设置,

用于控制哪些源码标签无法被加载,所有支持的源码标签可见系统目录下的“\include\taglib”,默认php标签是被禁用的。

当你还原数据的以后,有可能原来备份里没这个选项,或者是你禁用了源码里的php标签,所以才会报错 。
 

处理办法如下:

我们先登录后台找到网站后台--系统--系统基本参数---其他选项 ---源码引擎禁用标签。
 

如果没有找到这一项,请到后台-系统-系统设置-SQL命令行工具里运行一下下面的sql语句

INSERT INTO `dede_sysconfig` (`varname`, `info`, `groupid`, `type`, `value`) VALUES ('cfg_disable_funs', '源码引擎禁用PHP函数', 7, 'bstring', 'phpinfo,eval,exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source,file_put_contents'); 

INSERT INTO `dede_sysconfig` (`varname`, `info`, `groupid`, `type`, `value`) VALUES ('cfg_disable_tags', '源码引擎禁用标签', 7, 'bstring', 'php'); 

然后在织梦CMS网站后台--系统--系统基本参数---其他选项 ---源码引擎禁用标签里把php删除掉保存就正常了。

本文章网址:http://www.ppssdd.com/code/14225.html。转载请保留出处,谢谢合作!

DEDECMS JSON数据生成 DEDECMS JSON接口制作

DEDECMS JSON数据生成 DEDECMS JSON接口制作

 

json数据格式可以方便不同站点之间进行数据调用引用,当然我们的DEDECMS也可以实现全站数据生成JSON供其他站点调用,代码很简单,主要用到include/json.class.php。

织梦本身是自带json标签的,调用办法:

{dede:json url='' cache=300}
[field:id/]-[field:title/]<br/>
{/dede:json}

  这个标签调用例子在织梦手册里已经给我们提供了,url是一个远程json接口地址,这个接口文件json.php代码 里面,*后的返回必须是把数据通过json_encode($feeds)系统函数,进行json编码后,通过echo或print()函数来打印出来,这二点是必须的,然后,在前台我们就可以通过$.ajax()或$.getjson()来获取数据。织梦系统给我们提供了一个json类,在include/json.class.php文件里面,也就是是说,我们在对php文件转换json编码,就有了二种办法:

  1.直接用php系统给我们提供的系统函数,json_encode(),我建立大家用这个,即简单又省事,既然,php系统给我们提供了,我们可以不用织梦系统提供的。

  2.就是用织梦系统提供的,encode(),在使用前,首先引入json.class.php,即:

   require_once(DEDEINC.'/json.class.php');
   $json = new Services_JSON(SERVICES_JSON_SUPPRESS_ERRORS);

   echo $json->encode($reval);

  $reval这个变量是我们从数据库或其它地方得到的,一般是一个二维数组,例如下:

  Array (
  [0] => Array ( [id] => 95 [title] => 原图设计)
  [1] => Array ( [id] => 113 [title] => ssssssssssss)
  [2] => Array ( [id] => 111 [title] => hjhj )
  [3] => Array ( [id] => 110 [title] => ssssssssssss)
     )

  经echo 以后,显示的内容如下所示。

  [
   {"id":"95","title":"\u539f\u521b"},
   {"id":"113","title":"ssssssssssss"},
   {"id":"111","title":"hjhj"},
   {"id":"110","title":"ssssssssssss"}
  ]

  这是经过encode()或用json_encode()后,显示的内容。即,用中括号括起来的,几个json数据,这个数据回给请求的$.ajax()或$.getjson(),并由其对这个数据进行处理,显示我们相要的结果。

知道了原理,接下来就是详细实现办法,如下:

首先新建一个PHP文件,命名为json.php(也可以新建个文件夹命名为api,然后PHP命名为index.php,这样调用的时候就只需要你的域名/api这样的方式调用),用于作为被调用的API接口,代码如下:

<?php

$cfg_NotPrintHead = false;

header("Content-Type: text/html; charset=utf-8");

include_once (dirname(__FILE__)."/../include/common.inc.php");

error_reporting(E_ALL || ~E_NOTICE);

require_once(DEDEINC.'/json.class.php');

$reval = array();

$dsql->SetQuery("SELECT id,title FROM `dede_archives` ORDER BY id DESC LIMIT 0,10");

$dsql->Execute('me');

while ($row = $dsql->GetArray('me')) {

$row['title'] = gb2utf8($row['title']);

$reval[] = $row;

}

$json = new Services_JSON(SERVICES_JSON_SUPPRESS_ERRORS);

echo $json->encode($reval);

?>

这里代码有进行了GBK转UTF8的操作,所以兼容GBK版的DEDECMS

调用办法:

{dede:json url='域名/json.php' cache=300}

[field:id/]-[field:title/]<br/>

{/dede:json}

把调用代码放到你你需要的地方就行

本文章网址:http://www.ppssdd.com/code/10237.html。转载请保留出处,谢谢合作!

今天的关于dedecms 实现ctrl+v粘贴图片并上传、word粘贴带图片的分享已经结束,谢谢您的关注,如果想了解更多关于DedeCMS 5.7 标签tag长度限制的修改办法、dedecms 5.7怎样在任意位置显示自由列表标题+链接、DedeCMS Error:Tag disabled:php错误的完整处理办法、DEDECMS JSON数据生成 DEDECMS JSON接口制作的相关知识,请在本站进行查询。

本文标签: