在 CodeIgniter 中实现 TinyMCE 的问题

2024-01-12

我正在尝试在 CodeIgniter 中实现 TinyMCE。我创建了一个视图文件并从控制器调用它。我已将所有文件上传到我的 CI 项目文件夹中并显示了文件的路径。但它不起作用。这是视图文件:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Full featured example</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<!-- TinyMCE -->
<script type="text/javascript" src="<?php echo base_url()?>application/tinymce/jscripts/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript">
    tinyMCE.init({
        // General options
        mode : "textareas",
        theme : "advanced",
        plugins : "autolink,lists,pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,wordcount,advlist,autosave,visualblocks",

        // Theme options
        theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect",
        theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|,insertdate,inserttime,preview,|,forecolor,backcolor",
        theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iespell,media,advhr,|,print,|,ltr,rtl,|,fullscreen",
        theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acronym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak,restoredraft,visualblocks",
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_statusbar_location : "bottom",
        theme_advanced_resizing : true,

        // Example content CSS (should be your site CSS)
        content_css : "<?php echo base_url()?>application/tinymce/examples/css/content.css",

        // Drop lists for link/image/media/template dialogs
        template_external_list_url : "<?php echo base_url()?>application/tinymce/examples/lists/template_list.js",
        external_link_list_url : "<?php echo base_url()?>application/tinymce/examples/lists/link_list.js",
        external_image_list_url : "<?php echo base_url()?>application/tinymce/examples/lists/image_list.js",
        media_external_list_url : "<?php echo base_url()?>application/tinymce/examples/lists/media_list.js",

        // Style formats
        style_formats : [
            {title : 'Bold text', inline : 'b'},
            {title : 'Red text', inline : 'span', styles : {color : '#ff0000'}},
            {title : 'Red header', block : 'h1', styles : {color : '#ff0000'}},
            {title : 'Example 1', inline : 'span', classes : 'example1'},
            {title : 'Example 2', inline : 'span', classes : 'example2'},
            {title : 'Table styles'},
            {title : 'Table row 1', selector : 'tr', classes : 'tablerow1'}
        ],

        // Replace values for the template plugin
        template_replace_values : {
            username : "Some User",
            staffid : "991234"
        }
    });
</script>
<!-- /TinyMCE -->

</head>
<body role="application">

<form method="post" action="http://tinymce.moxiecode.com/dump.php?example=true">
    <div>
        <h3>Full featured example</h3>

        <p>
            This page shows all available buttons and plugins that are included in the TinyMCE core package.
            There are more examples on how to use TinyMCE in the <a href="http://tinymce.moxiecode.com/examples/">Wiki</a>.
        </p>

        <!-- Gets replaced with TinyMCE, remember HTML in a textarea should be encoded -->
        <div>
            <textarea id="elm1" name="elm1" rows="15" cols="80" style="width: 80%">
                &lt;p&gt;
                    This is some example text that you can edit inside the &lt;strong&gt;TinyMCE editor&lt;/strong&gt;.
                &lt;/p&gt;
                &lt;p&gt;
                Nam nisi elit, cursus in rhoncus sit amet, pulvinar laoreet leo. Nam sed lectus quam, ut sagittis tellus. Quisque dignissim mauris a augue rutrum tempor. Donec vitae purus nec massa vestibulum ornare sit amet id tellus. Nunc quam mauris, fermentum nec lacinia eget, sollicitudin nec ante. Aliquam molestie volutpat dapibus. Nunc interdum viverra sodales. Morbi laoreet pulvinar gravida. Quisque ut turpis sagittis nunc accumsan vehicula. Duis elementum congue ultrices. Cras faucibus feugiat arcu quis lacinia. In hac habitasse platea dictumst. Pellentesque fermentum magna sit amet tellus varius ullamcorper. Vestibulum at urna augue, eget varius neque. Fusce facilisis venenatis dapibus. Integer non sem at arcu euismod tempor nec sed nisl. Morbi ultricies, mauris ut ultricies adipiscing, felis odio condimentum massa, et luctus est nunc nec eros.
                &lt;/p&gt;
            </textarea>
        </div>

        <!-- Some integration calls -->
        <a href="javascript:;" onclick="tinyMCE.get('elm1').show();return false;">[Show]</a>
        <a href="javascript:;" onclick="tinyMCE.get('elm1').hide();return false;">[Hide]</a>
        <a href="javascript:;" onclick="tinyMCE.get('elm1').execCommand('Bold');return false;">[Bold]</a>
        <a href="javascript:;" onclick="alert(tinyMCE.get('elm1').getContent());return false;">[Get contents]</a>
        <a href="javascript:;" onclick="alert(tinyMCE.get('elm1').selection.getContent());return false;">[Get selected HTML]</a>
        <a href="javascript:;" onclick="alert(tinyMCE.get('elm1').selection.getContent({format : 'text'}));return false;">[Get selected text]</a>
        <a href="javascript:;" onclick="alert(tinyMCE.get('elm1').selection.getNode().nodeName);return false;">[Get selected element]</a>
        <a href="javascript:;" onclick="tinyMCE.execCommand('mceInsertContent',false,'<b>Hello world!!</b>');return false;">[Insert HTML]</a>
        <a href="javascript:;" onclick="tinyMCE.execCommand('mceReplaceContent',false,'<b>{$selection}</b>');return false;">[Replace selection]</a>

        <br />
        <input type="submit" name="save" value="Submit" />
        <input type="reset" name="reset" value="Reset" />
    </div>
</form>


</body>
</html>

不允许您调用以下范围内的文件application folder https://stackoverflow.com/questions/18427414/access-forbidden-to-view-image-file-located-in-codeigniter-view-foldr/18427549#18427549, 看一眼.htaccess文件存在于应用程序中:

Deny from all

你会得到 403 错误Access forbidden!

不管怎样,这个问题不会通过禁用该行来解决,因为 CodeIgniter 会查看 URI 并说:“好吧,我应该调用application存在于控制器文件夹中的类,然后调用tinymce方法通过传递这些参数:jscripts, tiny_mce, tiny_mce.js".

So:

  1. 将您的文件移出application/文件夹,类似的地方public/旁边的文件夹index.php.
  2. Open .htaccess根目录下存在的文件,并添加文件/文件夹的名称以防止它们被传递index.php.

例如,考虑以下结构:

system/
application/
public/
      img/
      css/
      js/
.htaccess
index.php
robots.txt

重写规则(.htaccess) 应该:

RewriteEngine on
RewriteCond $1 !^(index\.php|public|robots\.txt)
#                               |
#   Exclude the public folder <--
#   From being treated by:
RewriteRule ^(.*)$ index.php/$1 [L]

看一眼CodeIgniter 用户指南 http://ellislab.com/codeigniter/user-guide/general/urls.html了解更多信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 CodeIgniter 中实现 TinyMCE 的问题 的相关文章

  • 按下按钮时如何更改 Twitter Bootstrap 选项卡?

    我需要在按下按钮时更改选项卡 并且选项卡应由 id 标识 以下代码对我不起作用 只是重新加载页面 div class form actions div
  • 超时 jQuery 效果

    我试图让一个元素淡入 然后在 5000 毫秒内再次淡出 我知道我可以做类似的事情 setTimeout function notice fadeOut 5000 但这只会控制淡出 我会在回调中添加上述内容吗 Update 从 jQuery
  • Android 上的 Chrome 强制隐藏地址栏

    我最近开发了一个获取混合 http https 内容的网站 因此 我总是将地址栏显示在顶部 它不会像其他网站那样自动隐藏 这就是我要说的 This https planetkde org 是网站的链接 内容是从各种来源获取的 因此无法过滤非
  • Firefox(仅限)动态表单操作不起作用

    控制台为操作属性返回空白 我已经移动了 file upload attr action io cfm action updateitemfile item id agenda modal attr data defaultitemid 周围
  • Jquery Smoothscroll 函数 - 如何控制动画速度?

    有人可以帮助我吗 尝试通过我的平滑滚动和控制速度添加 慢 功能 希望能够实现真正的 平滑滚动 以下是代码 document ready function smoothscroll live click function e html bod
  • 页面其余部分完成加载后延迟加载 html5 视频

    我有一个视频元素用作我正在构建的页面底部部分的背景 我试图通过将 src 存储为 data src 属性并使用 jQuery 在其他资源加载后将其应用到 src 属性 因为它不是英雄图像或任何东西 我想加载海报以节省加载时间 然后稍后加载视
  • JQuery 屏蔽输入插件不起作用

    我已将 JQuery Masked 输入插件添加到我的 Web 项目中 但它根本不起作用 该插件可以在这里找到 http digitalbush com projects masked input plugin http digitalbu
  • IE 中带有“删除”方法的 jQuery.ajax 问题

    我有一个页面 用户可以使用按钮编辑各种内容并选择触发 ajax 调用 特别是 一个操作会导致远程调用一个 url 其中包含一些数据和 放置 请求 这 因为我使用的是宁静的 Rails 后端 会触发我的更新操作 我还有一个删除按钮 它调用相同
  • 将记录转换为序列化表单数据以通过 HTTP 发送

    有没有办法转换此记录 TError record code Word message String end TState record caption String address Cardinal counters TArray
  • jQuery - 动画CSS背景大小?

    我正在尝试对背景图像的大小进行动画处理 但它不起作用 从以下代码中知道为什么吗 this animate opacity 1 background size 70px 48px right 39 top 45 250 注意 所有其他属性都可
  • 更改滚动时的 div 不透明度

    我怎样才能做到当你向下滚动页面时 下一个 DIV 会在前一个 DIV 之上淡出 我设置了这个小提琴来更好地说明它 http jsfiddle net meEf4 176 http jsfiddle net meEf4 176 例如 如果您位
  • jQuery Mobile 中的页面高度不正确

    我正在使用 jQuery Mobile 1 2 0 开发一个 Web 应用程序 并且在 iOS 和 Android 上正确计算页面高度 但在 Windows Phone 上则不然 它在页面底部有一个间隙 知道如何修复它吗 最好只使用 CSS
  • Javascript/jQuery 变量未给出预期值

    和我之前的其他人一样 我也在 Javascript 的范围内苦苦挣扎 那并试图阅读该死的东西 我已经检查了关于这个问题的一些先前的线程 但我似乎无法让它们正确地应用于我的问题 在下面的示例中 我想操纵中的值tagsArr数组 一旦数组已完全
  • 添加 Javascript 按钮来更改 iframe 的内容

    我正在尝试创建此页面 其中有一个 Iframe 并且我想添加一个按钮来显示 iframe 中的下一页 以及一个按钮来显示 iframe 中的上一页 我总共有 4 个页面要在名为 1 html 2 html 3 html 4 html 的 i
  • 是否有一个 jquery List 插件可以自动排序项目并具有强大的添加/删除方法?

    我已经在谷歌上搜索了几个小时 寻找一些东西来处理我的情况 我还不够熟练 无法编写自己的 jquery 插件 该插件应该自动对列表进行排序 这并不像能够轻松地从列表中添加 删除项目那么重要 Themeroller 功能将是一个优点 我基本上会
  • 更改模板标签 <# {% {{ 等后,John Resig 的微模板出现语法错误

    我在使用 John Resig 的 Micro 模板时遇到了一些麻烦 谁能帮我解释为什么它不起作用 这是模板 以及发动机的改装部分 str replace r t n g split join t replace gt t g 1 r re
  • 无法使用 jQuery 添加两个小数

    我试图将两个小数值相加 但返回的总和是纯整数 怎么了 我找不到它 欢迎任何帮助 jQuery delivery method ship select change function var cost jQuery this val jQue
  • jQuery .nothas?

    有没有办法做相当于 nothas jQuery 中的选择器 例如 如果我想添加一个TBODY to all TABLE如果元素还没有 那么最好做这样的事情 TABLE nothas TBODY append tbody tbody 如果这可
  • 更改哈希值而不触发 hashchange 事件

    我使用哈希来动态加载内容 为了使后退按钮正常工作 我正在捕获哈希更改 然而 有时我需要更改哈希值而不触发哈希更改函数 例如 当页面重定向到服务器端时 我需要在内容返回后更新哈希值 我想出的最佳解决方案是取消绑定 hashchange 事件
  • asp.net mvc - Ajax 刷新视图的每个元素

    希望在退出 jquery 对话框后使用 ajax 刷新当前页面 我有一个包含 foreach 循环的视图 数据是从模型中提取的 每个循环有 2 个编辑 删除按钮 当我单击 编辑按钮 时 将打开一个 jquery UI 对话框进行编辑 当我保

随机推荐

  • 验证上下文始终为 NULL?

    我有自定义验证属性 如下所示 public class MyCustomAttribute ValidationAttribute protected override ValidationResult IsValid object val
  • 有没有办法在java应用程序中完全禁用RMI?

    在我们的应用程序中 远程过程调用是通过自己的基于 netty 的命令调度程序系统来解决的 我们有很多模块 大约 20 个 我想在单独的 jvm s 中运行所有模块 我的问题是 RMI 为每个 JVM 生成大约 17 个线程 我根本不需要 R
  • TailwindCSS:禁用的变体不起作用

    我正在尝试使用disabled顺风的变体 但它似乎不起作用 我不知道该怎么办 如果按钮被禁用 我想更改按钮外观 我已阅读文档 它说默认情况下未启用 禁用 变体 所以我修改了 tailwind config js 现在它看起来像这样 modu
  • 自动拉伸垂直列(div)

    检查这个fiddle http jsfiddle net Q7MFX 2 please 我想要以下内容 红色列有一些文本 黄色是动态内容 绿色没有任何内容 只是一种颜色 我希望红色和绿色列的高度与黄色内容一样高 height 100 没用
  • 在php中生成Excel文件时显示进度条

    我有一个 HTML 表单 当您通过单击按钮提交表单时 应用程序会使用 PHPExcel 生成一个 Excel 文件 一切正常 但是当 Excel 文件很大时 等待时间会很长 我想添加进度条或显示完成值的百分比 我的问题是我不知道如何将其插入
  • 基于堆栈的 RAII 是否保证仅在超出 C++ 范围后才能运行?

    使用时资源获取即初始化 RIAA http en wikipedia org wiki Resource Acquisition Is Initialization在 C 中 通常有以下内容 class CriticalSection pu
  • Camera2 Api..java.lang.IllegalArgumentException:Surface 没有有效的本机 Surface

    我尝试了很长时间将 Camera2 api 集成到我的应用程序中 它一开始捕获图像工作正常 但是当我第二次拍摄时 预览没有出现 我在 genymotion nexus 5 模拟器中测试了它 尝试了所有示例 预览是第二次不来拍照 也出现此错误
  • 从缓存中获取时完整性不正确

    跑步时yarn add dev jest I got 从缓存中获取时出现错误完整性错误 完整输出 tests master yarn add dev jest yarn add v1 19 0 info No lockfile found
  • 熔化 + strsplit,或与聚合相反

    我有一个小问题 在概念上似乎很简单 但我找不到方法 假设我有一个 data frame df2 其中一列列出了汽车品牌 另一列列出了每个品牌的所有型号 并用 分隔 我已经获得了 df2 聚合另一个名为 df1 的 data frame 主键
  • php json_encode 不转义新行

    我面临 json encode 的一些问题 当我 json encode 一个包含新行的数组时 它不会转义新行 而是删除 并保留 n ex array array name gt some text n r text results jso
  • 使用bat启动Powershell脚本

    我有一个批处理文件 test bat 来启动 powershell 脚本 pushd C myscripts powershell test ps1 arg1 arg2 with space arg3 popd 脚本 test ps1 位于
  • 仅当添加为引用时,在 C++ Windows 应用程序中引用本机 C++ DLL 才有效

    Visual Studio 2013 2015 我有一个空白的 C Windows 应用商店应用程序和同一解决方案中最简单的 DLL 仅导出void foo 在例如中使用此 DLL Win32 控制台应用程序按预期工作 包含 DLL 标头并
  • 如何将 raw_input 变量视为整数[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 Mit Print kann ich das Programm den Wert einer Variablen ausgeben anz
  • 修改字符串(字符数组)[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我正在尝试用C语言修改一个字符串 char signal cat 8 if k 1 strcpy s signal ca
  • 我无法运行 geckodriver、python selenium ; [Win错误216]

    我有 win32 驱动程序 https github com mozilla geckodriver releases https github com mozilla geckodriver releases 并将exe放在python3
  • 如何刷新网站缓存?

    这个问题专门针对 Azure 在其门户中 我有一个在 Azure WordPress 中运行的测试站点 当我尝试查看我所做的更新时 我看不到它们 即使我刷新浏览器的缓存 或者在从未访问过该网站的新位置访问该网站 我也看不到这些更改 我的下一
  • React:更新数组元素而不重新渲染其他数组元素

    是否有可能重新渲染一个元素一个数组的 阻止其他人重新渲染 Example 拥有 500 个数组
  • 使用自定义 ID 插入数据的代码优先实体框架

    我在项目中使用代码优先 EF 在插入具有自定义 id 的数据时遇到问题 当我尝试插入具有自定义 ID 例如 999 的数据时 EF 会忽略它并将递增的 ID 插入表中 我的型号 public class Address Key public
  • 为什么 `Export Default Const` 无效?

    我看到以下内容很好 const Tab connect mapState mapDispatch Tabs export default Tab 然而 这是不正确的 export default const Tab connect mapS
  • 在 CodeIgniter 中实现 TinyMCE 的问题

    我正在尝试在 CodeIgniter 中实现 TinyMCE 我创建了一个视图文件并从控制器调用它 我已将所有文件上传到我的 CI 项目文件夹中并显示了文件的路径 但它不起作用 这是视图文件