标签: codeigniter

我在哪里为Codeigniter(PHP)放置常量文件?

我有一个常量列表(我将它们用作枚举),一些是定义语句,有些只是全局变量.

我想在哪里将它们放在MVC框架中,以便我可以将它们用于我的模型和需要引用它的控制器?

我宁愿不把它粘在config/constants.php中,因为除了这个模型和使用它的控制器之外不应该调用它们.

编辑1:澄清

更具体地说,我有我的message_model模型,它有一堆我需要存储的常量message_model_constants.php.我应该放在哪里message_model_constants.php,是否有一种方法让控制器自动包含它,message_model当message_model不是(我不希望它)自动加载时加载.

编辑2:

除了我使用模型时,我真的不想自动加载常量

php codeigniter

5
推荐指数
2
解决办法
9626
查看次数

上传多个文件userfile [] array?

我试图上传多个图像,我有一个jquery插件设置,所以我可以浏览多个文件并选择它们.

我唯一的问题是访问我的控制器中的文件阵列,有谁知道我怎么做到这一点?谢谢.

视图:

<input type="file" name="userfile[]" id="userfile" class="multi" />
Run Code Online (Sandbox Code Playgroud)

arrays upload codeigniter

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

CodeIgniter/Datamapper:同一个表的两个一对多关系不起作用

我在与Codeigniter的DataMapper的关系中遇到了这个问题.我有一个Interview模型,有一个author_id和一个interviewee_id.它们都与用户模型中的用户ID相关.

我一直在尝试几种方法而没有工作; 这就是我现在所拥有的:

class Interview extends DataMapper
{
  var $has_one = array(
    'interviewee' => array(
      'class' => 'user',
      'other_field' => 'done_interview'),
    'author' => array(
      'class' => 'user',
      'other_field' => 'written_interview') 
  );
}

class User extends DataMapper
{
  var $has_many = array(
    'done_interview' => array(
      'class' => 'interview',
      'other_field' => 'interviewee'),
    'written_interview' => array(
      'class' => 'interview',
      'other_field' => 'author') 
  );
}
Run Code Online (Sandbox Code Playgroud)

我如何让DataMapper知道一个关系将通过author_id,另一个通过interviewee_id?

php codeigniter codeigniter-datamapper

5
推荐指数
1
解决办法
666
查看次数

自定义codeigniter的日志文件名log_message()

无论如何都要自定义log_message()CodeIgniter 2.1.0中生成的日志文件名?默认情况下,它的文件名是根据当前日期生成的.

php logging codeigniter

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

CodeIgniter基类,为什么呢?

许多框架决定使用这种方法:强制用户扩展基本控制器类(如果要创建新控制器)或扩展基础模型类(如果要创建新模型).

我们来看看CodeIgniter控制器基类的代码:

/**
 * Constructor
 */
public function __construct()
{
    self::$instance =& $this;

    // Assign all the class objects that were instantiated by the
    // bootstrap file (CodeIgniter.php) to local class variables
    // so that CI can run as one big super object.
    foreach (is_loaded() as $var => $class)
    {
        $this->$var =& load_class($class);
    }
    $this->load =& load_class('Loader', 'core');

    $this->load->initialize();

    log_message('debug', "Controller Class Initialized");
}
Run Code Online (Sandbox Code Playgroud)

它有什么作用?好吧,就我所知,它只是允许我们使用$this->load->...例如.

让我们来看看__get()模型基类的神奇方法:

/**
 * __get
 *
 * Allows models to access CI's …
Run Code Online (Sandbox Code Playgroud)

php codeigniter

5
推荐指数
1
解决办法
2101
查看次数

CodeIgniter中的Wordpress

我遵循了这个指南:http://philpalmieri.com/2009/06/codeigniter-and-wordpress-play-well-together/

这基本上说,安装wordpress,让它工作,然后用Code Igniters替换index.php文件,然后在我们启动CodeIgniter之前在文件的底部,需要word压的wp-load文件.

工作良好.

但是现在,我的$ _SESSION不起作用.我已设置代码点火器来使用数据库会话,并记录会话值,但它仍然无法正常工作.我无法登录我的CodeIgniter系统管理面板,我不能做任何需要会话的事情,因为Sessions不起作用.大声笑.

如何解决这个问题?

php wordpress codeigniter content-management-system

5
推荐指数
1
解决办法
3703
查看次数

CodeIgniter表单帮助程序文本输入字段导致html解析

我正在使用CodeIgniter,并在编辑表单上从数据库中提取数据。有时,此数据包含撇号,“&”号等。

我如何才能让CI不解析它并将其更改为HTML版本,以便最终用户可以对其进行编辑。

这是编辑表单的图像,此文本字段具有从数据库中提取的数据,并已填充到输入文本字段中。数据不包含任何特殊字符,如下面的第二张图片所示。

在此处输入图片说明

这是表格中数据外观的屏幕截图,请注意,我只是从最右边的列中提取。不是第四栏: 在此处输入图片说明

如您所知,数据没有以html转换的形式存储,但CI仍在进行转换。

这是上述文本字段的摘要:

<?php    
/**
 * Form Field attribute settings
 * @author Mike DeVita
 */
$companyname = array(
    'name'  => 'companyname',
    'placeholder' => 'Enter Your Companies Name',
    'id'    => 'companyname',
    'value' => set_value('', $points['pointFields']['companyname']->uf_fieldvalue),
    'maxlength' => 80,
    'size'  => 30
);
            <div class="_100">
                <p><?php echo form_label('Company Name', $companyname['id']); ?><?php echo form_input($companyname); ?></p>
                <?php echo form_error($companyname['id']); ?>
            </div>
Run Code Online (Sandbox Code Playgroud)

这是插入数据库的片段:

function addUserFieldHtml($compiledHtml){
    foreach ($compiledHtml as $cHK => $cHV){
        $data = array (
            'pointid' => $cHV['pointId'],
            'timestamp' => time(),
            'html' …
Run Code Online (Sandbox Code Playgroud)

php codeigniter

5
推荐指数
1
解决办法
8330
查看次数

分离CodeIgniter配置文件Git以便公开发布

我即将开始一个基于CodeIgniter的项目,并计划使用Git作为我们的DVCS.我将与其他一些开发人员合作,中央(源)服务器是私有托管的.但是我也想开源它并稍后将代码发布给Github.

我的问题是,有没有办法在Git中分离配置文件,以便配置文件中的私人信息不会发送到Github远程,而是发送到源和其他对等体.

另一个问题是我们可以使用类似的解决方案来获得本地开发配置文件和服务器吗?

php git configuration codeigniter github

5
推荐指数
1
解决办法
2115
查看次数

是否可以在Codeigniter表单中使用或在表单中进行验证?

我有一个输入,可以是十进制或数字。我要使用以下规则:

$this->form_validation->set_rules('price', 'Price', 'decimal|numeric');
Run Code Online (Sandbox Code Playgroud)

但是我认为form_validation帮助器中的规则不能与“或”语句一起使用。如果价格类似“ 149.99”,则有效,但如果价格为“ 150”,则无效。

我是否缺少某些东西,或者是否可能使用类似的东西:

 $this->form_validation->set_rules('price', 'Price', 'decimal or numeric');
Run Code Online (Sandbox Code Playgroud)

php codeigniter codeigniter-2

5
推荐指数
1
解决办法
3324
查看次数

如何在codeigniter中引用数据库连接?

如何在CodeIgniter的数据库处理程序对象上手动调用PHP数据库函数?如何检索连接($dbc),或调用函数如何mysql_real_escape_string($dbc, $variable)?

php mysql codeigniter

5
推荐指数
2
解决办法
4878
查看次数