标签: codeigniter

codeigniter中的Css/images/javascript

关于这篇文章,我想将css,images和js添加到我的codeigniter应用程序中.我的问题是在你的头文件添加路径后,你href="<?php echo base_url();?>css/moorainbow.css"在哪里实际放置你的文件,是在系统,应用程序,视图还是控制器?到目前为止,我发现有10篇文章解释了相同的程序,但是没有人在讨论应该保留实际文件的位置?任何人都可以帮我这个吗?谢谢

css php codeigniter

9
推荐指数
2
解决办法
1万
查看次数

验证CodeIgniter中的表单下拉列表

我正在使用CodeIgniter的表单助手和表单验证库来构建我的表单.我无法将下拉列表设置为"粘性"并找到合适的验证规则.

这就是我填充drodown的方式:

foreach($events as $event){
$options[$event->event_title] = $event->event_title;
}
$firstItem = '<option>Please select one...</option>';
echo form_dropdown('events', $options, '', $firstItem);
Run Code Online (Sandbox Code Playgroud)

这是从存储在数据库中的事件构建选项.表单看起来很好,并正确填充所有字段.

但是,当我提交表格时,下拉列表没有保留所选的值?此外,我应该如何验证它,我想让它成为必需但我也想确保我除了下拉列表中的第一个选项'请选择一个......'

提前致谢.

干杯,加兹

forms validation codeigniter

9
推荐指数
1
解决办法
4万
查看次数

Codeigniter扩展了扩展的MY_Controller

我严格按照Phil Sturgeon的方法文章来扩展基本控制器.但我仍然有一些错误.

我的3个班:

// application/libraries/MY_Controller.php
class MY_Controller extends Controller{
    public function __construct(){
        parent::__construct();
    }
}

// application/libraries/Public_Controller.php
class Public_Controller extends MY_Controller{
    public function __construct(){
        parent::__construct();

    }    
}

// application/controllers/user.php
class User extends Public_Controller{
    public function __construct(){
        parent::__construct();
    }
}
Run Code Online (Sandbox Code Playgroud)

致命错误:第2行的/srv/www/xxx/application/controllers/user.php中找不到"Public_Controller"类

好奇的是,如果我直接扩展,以下代码片段正在工作MY_Controller:

// application/controllers/user.php
class User extends MY_Controller{
    public function __construct(){
        parent::__construct();
    }
}
Run Code Online (Sandbox Code Playgroud)

我通过__autoload()或手动加载了控制器.控制器成功加载.

CI版本:1.7.3

php codeigniter

9
推荐指数
2
解决办法
2万
查看次数

如何在不使用太多内存的情况下强制下载大文件?

我正在尝试向用户提供大型zip文件.当有2个并发连接时,服务器内存不足(RAM).我将内存量从300MB增加到4GB(Dreamhost VPS)然后它工作正常.

我需要允许超过2个并发连接.实际的4GB将允许20个并发连接(太糟糕).

好吧,我正在使用的当前代码需要内存的两倍,然后是实际的文件大小.这太糟糕了.我希望将文件"流式传输"给用户.所以我分配的不仅仅是为用户提供的块.

以下代码是我在CodeIgniter(PHP框架)中使用的代码:

ini_set('memory_limit', '300M'); // it was the maximum amount of memory from my server
set_time_limit(0); // to avoid the connection being terminated by the server when serving bad connection downloads
force_download("download.zip", file_get_contents("../downloads/big_file_80M.zip"));exit;
Run Code Online (Sandbox Code Playgroud)

force_download函数如下(CodeIgniter默认帮助函数):

function force_download($filename = '', $data = '')
{
    if ($filename == '' OR $data == '')
    {
        return FALSE;
    }

    // Try to determine if the filename includes a file extension.
    // We need it in order to set the MIME type
    if …
Run Code Online (Sandbox Code Playgroud)

php apache memory-management codeigniter force-download

9
推荐指数
1
解决办法
1万
查看次数

使用Code Igniter制作面包屑的最佳方法是什么?

我想知道用Code Igniter制作面包屑的最佳方法是什么.

1:使用URL检索字符串

例如: $this->uri->segment(2)

2:你知道另一种方式吗?

我真的很想得到你的意见

php codeigniter breadcrumbs

9
推荐指数
1
解决办法
2万
查看次数

CodeIgniter子目录中的默认控制器无法正常工作

路由配置中的default_controller设置为"home.php".

我有一个控制器的子目录,我们称之为"文件夹".所以,如果我访问http://mysite.com/folder/,应该调用默认控制器"folder/home.php"吗?

但由于某种原因,这不起作用,我得到404.访问http://mysite.com/folder/home或http://mysite.com/folder/home/index按预期工作.除此之外,默认控制器在根目录中工作(http://mysite.com加载home.php).

任何想法,有没有其他人经历过这个?我无法理解它 - 它似乎是一个CI问题,但我找不到其他人有同样的问题.

从我至少理解的方式来看,文档表明这应该可以正常工作:http://codeigniter.com/user_guide/general/controllers.html#subfolders

将默认控制器设置为"folder/home.php"意味着http://mysite.com/folder/正常工作.除了我希望默认控制器只是"home.php" - 无论是在根目录还是在子目录中,都应该加载该目录中的home.php,如文档所示.

干杯

php codeigniter

9
推荐指数
2
解决办法
4万
查看次数

如何在codeigniter中调用另一个控制器中的一个控制器功能

我有一个名为的控制器home.php,其中有一个名为的函数podetails.我想在另一个控制器中调用此函数user.php.
有可能这样做吗?我HMVC在CI中已经阅读过,但我想知道是否可以不使用hmvc?

php codeigniter

9
推荐指数
1
解决办法
4万
查看次数

要获取字段,需要将表的名称作为参数

我需要获取数据库表的表结构.所以我使用以下代码.

class Some_model extends CI_Model{

    public $DB1;
    function __construct(){
        parent::__construct();
        $this->DB1 = $this->load->database('default',TRUE);
    }

    function getTableStructure($tableName){
        echo $tableName;     //this Outputs my table Name that i pass in the function
        return $this->DB1->field_data($tableName) ;   //this gives error for some tables
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到了数据库错误

要获取字段,需要将表的名称作为参数.

注意:此函数适用于某些表,但我在其他几个表上得到此错误.我正在检查的表是"admin_user"

更新:

我检查了system/database文件夹中DB_driver.php文件中的field_data函数.

当我打印返回对象即

echo "<pre">;print_r($query->field_data());die();
//return $query->field_data();   commented this line print's the object
Run Code Online (Sandbox Code Playgroud)

然而,

//echo "<pre">;print_r($query->field_data());die();  comment this line shows error. 
return $query->field_data();
Run Code Online (Sandbox Code Playgroud)

php codeigniter

9
推荐指数
1
解决办法
458
查看次数

如何在codeigniter控制器中定义json头?

我想json在控制器中以格式显示响应,并且不希望在视图中移动.所以,请让我以任何方式让我能够表达json回应.

这是我想添加json标题的代码.

$result = $this->mod_doc->get_list();   
echo json_encode($result);
Run Code Online (Sandbox Code Playgroud)

php codeigniter

9
推荐指数
2
解决办法
2万
查看次数

Codeigniter HMVC + ion_auth加载配置项时遇到问题

我一直在敲我的头5个小时,我终于解决了问题,但我不知道原因就睡不着.我先解释一下这个问题.

我使用了codeigniter HMVC扩展并将ion_auth安装为一个单独的模块.

|-modules
|--auth
|---config
|-----ion_auth.php
|---controllers
|-----auth.php
|---models
|-----ion_auth_model.php
|---views
Run Code Online (Sandbox Code Playgroud)

当我试图获得用户的组时,我开始遇到有线SQL错误.然后我缩小了问题,并发现文件config/ion_auth.php中没有加载项目ion_auth_model.php.

ERROR - 2016-02-24 20:09:26 - >查询错误:您的SQL语法中有错误; 检查与MySQL服务器版本对应的手册,以便在'as id,'附近使用正确的语法.name,.description加入.=.id在哪里 第1行='2' - 无效查询:SELECT.作为id,.name,.description加入.=.id 在哪里 ='2'

然后我尝试了几个东西,当我'ion_auth'从ion_auth_model.php一切方法调用中删除索引时,一切都开始起作用了.

我变了

$this->tables  = $this->config->item('tables', 'ion_auth');
$this->join            = $this->config->item('join', 'ion_auth);
Run Code Online (Sandbox Code Playgroud)

至

$this->tables  = $this->config->item('tables');
$this->join            = $this->config->item('join');
Run Code Online (Sandbox Code Playgroud)

谁能告诉我它为什么有效?

codeigniter hmvc codeigniter-hmvc

9
推荐指数
1
解决办法
542
查看次数