问题标签 [codeigniter-2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 扩展 CodeIgniter Security.php 以启用日志记录
TLDR;我想在替换邪恶数据时启用 xss_clean() 的数据库日志记录。
我想在 Security.php 中启用 xss_clean() 函数的数据库日志记录,基本上我想做的是知道我成功输入 xss_clean() 的输入是否被识别为其中包含被过滤掉的恶意数据或不。
所以基本上:
对我来说理想的情况是:
- 从 XSS 中清除字符串
- 返回干净的 $str
- 将有关恶意数据(以及最终登录的用户)的信息输入到数据库中
据我在 Security.php 文件中看到的,没有什么可以为我解决这个问题,或者可以通过钩子等来解决这个问题。我当然可能弄错了。
由于没有记录在 Security.php 中进行了多少替换 - 我是否被迫扩展 Security.php,将当前代码复制粘贴到原始函数中并对其进行更改以支持这一点?或者对于 CodeIgniter 的未来更新(尤其是被篡改/扩展的文件)是否有更干净和安全的解决方案?
.htaccess - 403 error when moving CodeIgniter app from localhost to QA server
I’ve looked in the forums (both here and on CodeIgniter.com) but haven’t found any answers that help. I have a CI 2.0.2 app that I developed locally in MAMP. It works perfectly. I copied the entire CI install up to our QA server, and am getting 403 Forbidden errors on every single page (even the default.) The file permissions are the same as all our other (non-CI) apps on that server. We don’t have a .htaccess file on the server anywhere, aside from the ones in the CI install. I’ve renamed those files so they shouldn’t be causing any access errors, but I still can’t get at any of my pages.
Can anyone point me in the right direction? I really don’t know where else to look at this point.
php - 我的扩展 CodeIgniter 2.0.2 类看不到它的父类方法
这是我的第一个 OOP php 应用程序,我在这里有点难过......
我创建了以下扩展 CI_Model 的类
这是扩展上述类的类:
这两个类都在模型目录中,并且 LXCoreModel 类是自动加载的(行 $autoload['model'] = array('LXCoreModel'); 存在于 autoload.php 文件中)但是,当我尝试运行我的代码时我收到此错误:
致命错误:在第 25 行调用 C:\wamp\www\CI_APP\application\models\LXAccAdminModel.php 中未定义的函数 elementExists()
谢谢你的时间!:)
codeigniter - 我在 Codeigniter 中将图像文件、css、js 等放在哪里?
将css文件夹和图像文件夹放在哪里可以接受?我在想视图文件夹里面?但是,控制器总是将路径重新路由到基本 url,所以我必须在 .html 文件中指定路径到它所在的位置,这是多余的。
codeigniter - 在 CodeIgniter 中验证失败后重置下拉值
我有一个非常简单的投票表格。它包含条目 ID 的单个文本字段,然后是五个下拉列表。唯一正在进行的验证是在文本字段上,但如果失败,我希望所有下拉列表都保留它们的值。
例如,用户输入 12345 作为条目,然后从所有五个下拉列表中选择选项 A。(选项 B 是默认设置。)如果 12345 验证失败,则在显示验证错误时下拉菜单仍应设置为选项 A。那没有发生。我正在使用表单助手的 form_dropdown 来创建下拉菜单。有任何想法吗?如您所见,我尝试在名为 q1 的下拉列表中使用 set_value,但它不起作用。验证本身确实有效。
这是表单的代码:
我在 CodeIgniter 论坛上有人告诉我使用 set_select,但我认为我不能使用 set_select,因为我没有写出选择框的各个值,也没有试图提供一个硬-编码的默认值。我需要在运行表单验证之前将下拉菜单重置为用户选择的值。我正在使用 form_dropdown 函数,那么如何将实际选择的值传递给 set_select 的第二个参数?根据 set_select 文档,
第一个参数必须包含选择菜单的名称, 第二个参数必须包含每个项目的值
这篇帖子也有评论说要使用 set_value - echo form_dropdown('events', $options, set_value('events'), $firstItem);
。该评论获得了三票,所以我假设它适用于某些人,但对我没有任何作用。这个问题已经有一年了。也许这适用于旧版本的 CI,但不适用于最新版本。无论如何,在使用 form_dropdown 创建下拉菜单时,必须有一种方法来获得“粘性”下拉列表值,不是吗?我无法想象我必须做很长的路要通过循环遍历一组值并分别回显每个选项行来创建下拉列表;这首先违背了使用 CI 之类的东西的目的。
php - 使用 Doctrine 2 注释阅读器进行自定义注释
我对 Doctrine 2 很陌生,并且正在使用注释来进行数据库映射。我想更进一步并使用一些自定义注释。目的是能够制作表格等,可以通过注释创建设置。我在阅读任何注释时都遇到了问题——即使是 @Table 之类的注释也没有从解析器返回。
我正在使用 Codeigniter 2 和模块化扩展。在我的控制器中,我有:
它返回一个空数组。
然后我的库/注释文件夹中有一个文件,Bar.php:
最后,我的用户模型:
我正在尝试遵循此示例: http: //www.doctrine-project.org/projects/common/2.0/docs/reference/annotations/en#setup-and-configuration
提前感谢您的帮助!
标记。
php - 修改 CodeIgniter Active Record Query 命令?
我正在开发一个 Codeigniter (2.0.2) 应用程序,它将利用 Master 数据库进行所有写操作(INSERT/UPDATE/DELETE)和一个只读副本用于所有读操作(SELECT)。
现在我知道我可以在代码中访问两个不同的数据库对象以将各个请求路由到特定的数据库服务器,但我认为有更好的方法,自动化的方法。我将使用 MySQL 和 Active Record,并且还想构建 Memcache 检查 - 虽然它不会立即使用,但我希望将来可以选择在这个阶段内置。
我在想是否可以添加某种钩子/库来拦截 $this->db->query 以便发生以下情况:
1) 收到 SQL 查询
2)检查是否选择查询
2a) 如果 SELECT,查看 Memcache 是否处于活动状态,如果是,则编码 SQL 并检查 Memcache 以获取响应。
2b) 如果没有 memcache 响应,或者 Memcache 未处于活动状态,则通过 READ MySQL 服务器正常执行查询。
3) 查询未被选择,因此通过 WRITE MySQL 服务器正常执行查询。
4) 返回响应。
我敢肯定,看着这个,它应该很简单,但无论我怎么看,我只是没有看到潜在的答案 - 但必须有一个!任何人都可以提供帮助/协助吗?
另外,我还希望能够记录所有写SQL命令进行故障排除,想必最好的办法是把3a) Write SQL command to plain text file...引入到上面的方案中。我不相信 MySQL 实际上会记录非 SELECT 查询……是吗?
php - Doctrine 2 EntityManager 在第一次请求中导致时间损失
最近我将 Doctrine 2 ORM 集成到 CodeIgniter 2 中。我将 Doctrine 2 配置为一个库并在 CodeIgniter 中自动加载它。在一个页面中,我通过以下方式实例化理论实体管理器:
然后我在需要时开始使用实体管理器。我遇到的问题是,在每个页面请求中,实体管理器都需要一些时间来初始化(大约 1 秒)。这会导致用户等到页面加载完毕。下面你可以看到我测量的一些性能结果:
GetArticle 函数基本上进行 EntityManager->find() 调用:
即使我使用 EntityManager->createQuery() 方法,我也必须等待 1 秒。
在每一页中,由于 EntityManager 的第一个请求,我有大约 1 秒的时间损失。
这很常见吗?
这 1 秒是否来自 EntityManager 需要建立与数据库的连接这一事实?不过,第一次请求之后的功能/请求非常快。
php - 使用 Code Igniter 制作简单深入的局部视图
我想以“深入”的方式嵌入视图:
索引.php:
页面.php:
节.php:
那将输出:
我尝试使用 Codeigniter 的Contentful库,它非常接近 Rails 模板系统,但我不知道要嵌入更多的深度级别。
任何的想法 ?
php - 在 PHP 中将框架部署到已经准备好的项目中
我有一个完全准备好的网络应用程序,我们用 php 开发。它是完全程序化的,因为我不知道我可以使用 OOPS 来提高效率(因为我是 PHP 的初学者)。现在我有了所有文件,我的朋友介绍了 CodeIgniter,我想知道如何转换项目并将其部署到这个框架中。请提出一些可以减少开发时间的技巧。