问题标签 [codeigniter-hmvc]
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.
codeigniter - 如何在实时服务器上 Codeigniter HMVC 回调函数错误?
大家早上好。
我已经在 codeigniter3 hmvc 中建立了一个网站。所有路由和回调函数在我的本地主机 xampp 上都能完美运行,在 godday 共享托管实时服务器上上传项目后,我面临回调函数问题,日志文件中显示以下错误我不明白为什么会发生这种情况。我的用户日志记录功能也显示此错误:-
无法访问与您的字段名称密码对应的错误消息。(验证登录)
codeigniter的logs文件夹中的错误日志
这些是我的应用程序/config/config.php
Bellow 是我的 application/config/routes.php 设置
这是我在前端模块中的 Home.php 控制器
这是我的表单验证库文件
这是我的用户控制器文件
php - 访问 HMVC Codeigniter 中模块的子文件夹
我的模块中有一个用于上传的子文件夹。我正在为 codeigniter 使用 HMVC 扩展。我的应用程序的结构如下:
modules
--mymodule
----/controllers
----/models
----/views
----/uploads
-------/images
如何使用 URL 访问图像文件夹?
php - Codeigniter-HMVC 框架不接受控制器下的目录名称与同一级别上的控制器名称相同
Codeigniter-HMVC 框架不接受控制器下的目录名称与同一级别的控制器名称相同。
URL:返回 404 错误,因为它正在[my Domain]/my_module/level1_controller/level2_controller
寻找方法名称level2_controller
level1_controller.php
这只是 HMVC 的限制还是我做错了?有什么方法可以让 HMVC 理解目录名称与同一级别的控制器名称相同?
php - CodeIgniter HMVC 动态角色访问问题
我正在使用 CodeIgniter 3.x、最新的 HMVC、ion Auth 进行身份验证并基于应用程序角色。
该应用程序是动态的基于角色的。即数据库处理角色 ► 用户 ► modules-controlers-CRUD_rights
现在一个模块函数调用第二个模块函数。问题是当第一个模块权限为 READ 并且第二个模块没有授予特定用户的 READ 权限时。我无法弄清楚如何处理这种请求。
例如。
Role1 没有对 ClientsModule 的读取访问权限。
现在,在编码时,我通过以下代码访问客户端:
我得到 404,因为 ClientsModule/ClientController 构造函数的代码如下。
我不确定我在哪里遗漏了一些东西。我在正确使用 HMVC 方面的知识或使用 OOPS 的知识都达不到标准。如果有人有 HMVC 和/或 CI 经验,请帮助我。
php - 未找到模块视图
我在使用带有模块的 Codeigniter 的 HMVC 实现时遇到问题。
我创建了一个身份验证模块,称为autenticacion,出于显而易见的原因,为了检查会话的有效性和到期,它总是在MX_Controller中使用,这样:
或者
取决于某些条件。
自从我添加了这个认证实现后,对其他模块的正常访问就被破坏了。
现在,例如,如果我尝试访问
我编写了这个模块文件:
modules/items/controllers/Items.php
(这扩展了 MX_Controller) 和视图:
尽管该视图已加载到 Items 控制器中,但仍找不到该视图。
如果我在 Items 构造函数中打印出 $this,则MY_Loader实例会显示此属性:
[_module:protected] => 认证
我理解这意味着项目模块没有被加载到加载器中,尽管我可以到达它的控制器。另一个模块(autenticacion)似乎把这一切搞砸了。
我该如何解决这个问题?
编辑:
这是我在MX_Controller中更改的内容,以便处理会话检查和更新:
php - Codeigniter 3.x - 将 $data 与动态数据一起预加载到所有视图
问题:
出于好奇,我想知道 Codeigniter 是否提供了一种将特定数据始终加载到视图中的方法。
例如:我有一个配置文件,其中包含有利于访问所有页面的视图内部的站点信息,而不是每次加载视图时都必须调用加载该数据,我是否可以始终包含它?
选项1:
某种 MY_Loader 扩展 - 我们已经有一个 MY_Controller,所以做一个 MY_Loader 类并让 MY_Controller 调用它而不是 CI_Loader 不会太牵强。但是,我不确定这是可能的。
选项 2:
我知道如果您编辑系统文件,这是可能的,但我真的不希望这样做。因为这使得更新 CI 时很难跟踪更改。
选项 3:
???
想法?
编辑澄清:这专门用于将数据加载到视图中,扩展CI_Controller
和设置成员变量,只能从模型和控制器访问,而不是视图。
codeigniter - 如果会话过期,重定向时不显示自定义错误消息
我正在使用Codeigniter 版本 3.0.3 和 HMVC开发我的登录控制器
当用户登录到管理仪表板时,它会设置一个会话令牌,然后将其重定向到 url
当会话到期时,它会重定向回管理页面,并且应该在登录页面上显示消息。我正在尝试设置$data 变量消息而不是使用闪存数据
由于某种原因,当会话过期并被重定向回管理员时,警告消息不会激活。
问题:为什么当会话过期后重定向回管理员登录时自定义数据消息不显示?
我还使用 codeigniter 钩子函数来运行登录检查功能
控制器
文件名:登录.php
登录视图 $error_warning
钩
codeigniter - Codeigniter 3 登录检查功能未显示正确的 flashdata 消息
我正在创建一个登录检查功能。但是我的两条闪存数据信息设置不正确。
- 如果用户已登录,然后如果会话过期,则应设置此闪存数据消息您的会话令牌已过期!
- 如果用户尚未登录并尝试访问未登录的控制器,则应设置此 flashdata 消息您需要登录才能访问此站点!
由于某种原因,它总是显示第二条 flashdata 消息。
问题:我怎样才能正确使用这两个 flashdata 消息。
控制器: Login.php 功能:检查
我通过 codeigniter 钩子运行函数,这样我就不必在每个控制器上添加它。
php - HMVC安装过程中出现错误,如何删除?
我是 codeigniter HMVC 结构的新手,请按照此链接进行安装。 https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc/src
已执行所有步骤,但到达第 12 步时显示错误。
脚步:
- 从干净的 CI 安装开始
- 为您的安装正确设置 $config['base_url']
- 访问 URL /index.php/welcome => 显示 Welcome to CodeIgniter
- 将 Modular Extensions third_party 文件拖放到 application/third_party 目录中
- 将 Modular Extensions 核心文件放到 application/core 中,除非您希望创建自己的控制器扩展,否则不需要 MY_Controller.php 文件
- 访问 URL /index.php/welcome => 显示 Welcome to CodeIgniter
- 创建模块目录结构 application/modules/welcome/controllers
- 将控制器 application/controllers/welcome.php 移动到 application/modules/welcome/controllers/welcome.php
- 访问 URL /index.php/welcome => 显示 Welcome to CodeIgniter
- 创建目录 application/modules/welcome/views
- 移动视图 application/views/welcome_message.php 到 application/modules/welcome/views/welcome_message.php
- 访问 URL /index.php/welcome => 显示 Welcome to CodeIgniter
错误:
您的视图文件夹路径似乎设置不正确。请打开以下文件并更正:index.php
请问怎么解决?route/config.index 等是否需要更改?我也应该将配置文件夹复制粘贴到每个模块吗?目前他们都是默认的。我的 CI 版本是最新的 3.0.3 并且在配置 index_page 是空的而不是 index.php
还通过添加 index.php 而不是空来检查。我在网上搜索的另一件事,也尝试过大写 View、Controler 等文件夹名称,但什么也没发生。
php - Codeigniter 会话库 - HMVC
我在 CI 3.0.3 和最新的HMVC Extension中编码时遇到了一个问题。我正在自动加载一些库、助手等等。会话库也是如此。现在我有几个控制器都工作正常,除了一个。
在该控制器中,我使用以下代码:
在使用这个静态函数时,我得到了错误:
日志说会话类已初始化。
任何想法为什么我得到这个错误?
编辑: - - - - - - - - - - - - - - - - - - - - - - - - ----------------------
为了防止愚蠢的答案如下......
在 CI 中,每个请求不能调用超过 1 个控制器。因此,要实现HMVC,我们必须模拟控制器。它可以通过库来完成,或者通过这个“Modular Extensions HMVC”贡献来完成。
使用库和“模块化 HMVC”HMVC 类之间的区别是: 1. 无需在 HMVC 类中获取和使用 CI 实例 2. HMVC 类存储在模块目录中,而不是库目录中。
编辑 2:------------------------------------------------------------ ----------------------
更多问题:
- 是的,会话库是问题所在
- 是的,仅与此 HMVC 插件结合使用
- 是的,仅当您使用静态方法时
modules::run();
- 不,我需要这种方法来模拟控制器中的控制器