我正在尝试为我的php网站创建身份验证.我正在使用codeigniter框架.我将不得不在我网站的所有页面中验证会话.因此,为了避免代码重复,我计划在辅助函数中执行此操作.既然我的用户凭据在我的数据库中,我想访问模型以从辅助函数查询数据库.在控制器类中,我会通过使用来完成此操作
$this->load->model('user_model');
Run Code Online (Sandbox Code Playgroud)
请在帮助文件中告诉我它的等价物.任何形式的建议也值得赞赏.提前致谢.
是否可以在CI中扩展用户的会话到期时间.我想要做的是,默认情况下,每个用户的会话cookie持续例如1天,但每次用户访问该站点时,他的会话到期时间会延长一天.
我不知道这样做是不是一个好主意,也许我应该把饼干的生命时间设置为一周,就是这样吗?
我是Code Igniter的新手,我想知道是否有像MasterPages那样有效的.NET.
此外,我想知道我应该在哪里保存我的公共文件,如脚本,样式和图像.
问候,并提前谢谢你
我的codeigniter应用程序中的模型有问题.我收到发送标头信息的错误.基本上,codeigniter抱怨我的注册模型先发送标题信息.这怎么可能?我认为模型仅用于保存数据库查询方法,仅此而已.有人可以解释一下吗?
这是控制器的开头如下:
function User()
{
parent::Controller();
$this->view_data['base_url'] = base_url();
$this->load->model('User_registration_model'); // don't forget capital, it's important
$this->load->model('user_map_model'); // don't forget capital, it's important
$this->load->model('Tribe_model'); // don't forget capital, it's important
$this->load->library('email'); // Loading email library
$this->load->library('session'); // sets up the session
$this->load->library ('form_validation'); // Loading form validation library
$this->load->helper(array('form', 'url'));
}
Run Code Online (Sandbox Code Playgroud) https://github.com/alexbilbie/CodeIgniter-OAuth-2.0-Server
我在GitHub上找到了这个但是实现的步骤并没有真正帮助将OAuth代码安装到CodeIgniter中,并且没有找到关于如何执行此操作的任何非常好的文章
有没有人这样做可以帮我设置这个?
我刚开始学习Code Igniter.
我想知道如何将变量从一个控制器(first_cont.php)传递给其他控制器(second_cont.php)?
任何帮助,将不胜感激 .
提前致谢 :)
我正在尝试在CI中使用路由来创建注册表单
signup 重新路由到 user/signup
但我的注册功能可以包含一个参数: function signup($type = 1)
如何通过路由选择进行此选择?我试过了$route['signup/?(:num)'] = 'user/signup/$1';,但是当/signup我要获得404时,才/signup/1/有效.
我正在使用codeigniter 2.1.3
我正在尝试从库中加载模型.最初我在库中的构造中的代码看起来像这样
$this->CI=& get_instance(); $this->CI->load->database('default')
Run Code Online (Sandbox Code Playgroud)
然后在我的一个库方法中
当我尝试下面的行它不起作用
$this->load->model('model_name')
Run Code Online (Sandbox Code Playgroud)
但是当我试着这个
$this->CI->load->model('model_name','',TRUE)
Run Code Online (Sandbox Code Playgroud)
它有效,任何人都可以解释CI的实例所指的内容以及加载模型时的2个额外参数?提前致谢.
我正在使用Ionic在Codeigniter/Ion_Auth/codeigniter-restclient之上构建一个登录系统,当我尝试从"离子服务器"登录时,登录工作,但对logged_in()方法的下一个api请求返回false.
当我将浏览器指向www文件夹时,同样的事情正常.
所以这是一步一步的问题:
运行离子服务
你看到登录表单(http:// localhost:8100 /#/ app/login)
输入电子邮件并通过
其余的api返回"登录成功"
$ state.go('app.profile')工作并重定向到http:// localhost:8100 /#/ app/profile
REST get api/logged_in返回false,然后重定向到登录页面
如果我在常规浏览器中执行相同操作,则步骤1变为:打开浏览器并转到http:// localhost:8888/App/www /#/ app/login,在步骤6 REST get api/logged_in返回true并且我不要没有重定向到登录页面,我留在个人资料页面.
代码是一样的.所以我的猜测是,ion_auth可能无法获得它想要的cookie或会话被重置.我不确定这个问题是什么.这是我的第一个Ionic/App项目,所以我可能会错过一些使用在浏览器中运行的代码从移动应用程序进行身份验证的正确方法
谢谢
更新:似乎在使用"离子服务器"窗口时,对API的每个请求都会触发一个新会话.新会话存储在数据库中,ion_auth针对最后一个会话测试logged_in,其中不包含登录详细信息.
我想使用钩子在执行后记录所有查询.-i启用了config.php中的钩子 - 这是我的钩子 - >
$hook['post_controller'] = array(
'class' => 'Db_log',
'function' => 'logQueries',
'filename' => 'db_log.php',
'filepath' => 'hooks'
);
Run Code Online (Sandbox Code Playgroud)
- 这是钩子定义 - >
class Db_log
{
function __construct()
{
}
function logQueries()
{
$CI = & get_instance();
$filepath = APPPATH . 'logs/Query-log-' . date('Y-m-d') . '.php';
$handle = fopen($filepath, "a+");
$times = $CI->db->query_times;
foreach ($CI->db->queries as $key => $query)
{
$sql = $query . " \n Execution Time:" . $times[$key];
fwrite($handle, $sql . "\n\n");
}
fclose($handle);
}
} …Run Code Online (Sandbox Code Playgroud)