标签: codeigniter-2

Codeigniter - 返回我的模型对象而不是stdClass对象

不确定这句话的最佳方法是如何忍受我.

在Codeigniter中,我可以返回我的对象​​的记录集没有问题,但是它作为stdClass对象而不是作为"模型"对象(例如页面对象)返回,然后我可以使用该对象来使用该模型中的其他方法.

我在这里错过了一招吗?或者这是CI中的标准功能吗?

php codeigniter stdclass models codeigniter-2

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

jQuery Mobile和PhoneGap中的身份验证

我有一个使用jQuery Mobile和PHP(CodeIgniter框架)构建的Web应用程序.现在我正在尝试制作它的PhoneGap版本,使其可以作为独立应用程序分发.但是,PHP Web应用程序.版本使用Ion Auth,一个CodeIgniter插件进行身份验证.因此,当您转到需要身份验证的页面时,应用程序会将您重定向到身份验证控制器登录方法.在身份验证之后,它会将您重定向回主页(在本例中为jQuery Mobile页面).这在网络应用程序中工作正常,因为主页首先由家庭控制器打开.

但这里有关键:在PhoneGap版本中,"home"页面需要是PhoneGap中的index.html文件.显然,你可以通过添加在PhoneGap.plist值在启动时加载另一个网址,但无法接受被苹果提交到应用商店.如果我在身份验证中进行重定向,我无法在身份验证后返回index.html文件...

那么应该如何在PhoneGap/jQuery Mobile应用程序中进行身份验证呢?

更新:

我有这个根据答案的一个尝试,但应用程序仍试图导航到该帐户/登录页面(不存在),当时我只是想通过邮局登录并从该方法返回一个值:

    $('#login_form').bind('submit', function () {
        event.preventDefault();
        //send a post request to your web-service
        $.post('http://localhost/app_xcode/account/login', $(this).serialize(), function (response) {
            //parse the response string into an object
            var response = response;
            //check if the authorization was successful or not
            if (response == true) {
                $.mobile.changePage('#toc', "slide");
            } else {
                alert('login failed');
                $.mobile.changePage('#toc', "slide");
            }
        });
    });
Run Code Online (Sandbox Code Playgroud)

这是控制器方法:

function login()
    {
        //validate form input
        $this->form_validation->set_rules('identity', 'Identity', 'required');
        $this->form_validation->set_rules('password', 'Password', 'required');

        $base_url = $this->config->item('base_url');

        $mobile …
Run Code Online (Sandbox Code Playgroud)

authentication jquery-mobile codeigniter-2 cordova

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

SQL查询转义+ codeigniter

我正在使用codeigniter,并且大部分时间都使用活动记录进行查询(自动转义它们),但由于变量,此查询似乎并不适合它.所以我需要弄清楚如何手动转义查询.

Codeigniter文档建议以这种方式转义查询:

$sql = "INSERT INTO table (title) VALUES(".$this->db->escape($title).")";
Run Code Online (Sandbox Code Playgroud)

我的原始查询

$sql = "SELECT * FROM (`user_language`) WHERE `user_id` = '{$id}'";
Run Code Online (Sandbox Code Playgroud)

我的转义查询

$sql = "SELECT * FROM (`user_language`) WHERE `user_id` = '{$id}' VALUES(".$this->db->escape($user_language).")";
Run Code Online (Sandbox Code Playgroud)

但我无法正确使用语法.错误消息是:

  • PHP错误消息:未定义的变量:user_language
  • SQL错误:语法错误...在第1行'VALUES(NULL)'附近

php mysql sql codeigniter codeigniter-2

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

为什么需要CIUnit才能将PHPUnit与CodeIgniter一起使用?

我们决定在下一个项目中使用PHPUnit(和Jenkins一起使用).我们正在考虑不同的PHP框架,其中一个是CodeIgniter.我看到一个 很多 人用我的CIUNIT"桥"的PHPUnit和笨.在线文档中几乎没有解释.

为什么需要?

其他框架似乎不需要像这样的"酷桥".

php phpunit unit-testing codeigniter codeigniter-2

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

CodeIgniter列表字段

我正在使用CodeIgniter 2.1.3.我有函数的问题,list_fields() 它应该返回MySQL结果的字段数组.所以下面的代码应该列出MySQL结果的所有字段.

$query = $this->db->query("SELECT * from $tablename where REGNO='$keyword' " );
$fields  = $query->list_fields();
foreach ($fields as $f)
{
echo $f;
} 
Run Code Online (Sandbox Code Playgroud)

它在Windows中工作正常,但它在Linux中不起作用,但如果结果中的行数为零,则即使在Linux中也能正常工作.

知道出了什么问题吗?

php mysql codeigniter codeigniter-2

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

CodeIgniter多个数据库使用而不更改第一个数据库的现有代码

我已经使用codeigniter成功配置了第二个数据库,并且能够创建表.现在的问题是,现在使用的每个以前存在的代码行都$this->db使用第二个数据库,所以它自然会弹出错误.让我解释一下细节:

我使用codeigniter的迁移库,在新的迁移中,我使用dbforge创建数据库,就像这样$this->dbforge->create_database('website_store').到目前为止一直很好,然后我使用$DB2 = $this->load->database('store', TRUE);并创建一个表连接到这个数据库.一切都很好.

然后迁移结束,codeigniter尝试更新迁移表以推送最新版本,但查看store数据库而不是默认数据库,因此它会弹出以下错误:

Table 'website_store.migrations' doesn't exist
UPDATE `migrations` SET `version` = 45
Run Code Online (Sandbox Code Playgroud)

希望有人知道使用多个数据库和迁移库.顺便说一句,在database.php文件中,它被设置为使用默认数据库:$active_group = "default";而不是商店数据库,所以它应该工作.看起来迁移库看到已经加载了数据库,感觉很懒,并使用了那个.

注意: 看起来这些人有类似的问题,他们通过将'pconnect'设置为'false'来修复,但保持与两个数据库的连接会很好:

在Code Igniter中加载多个数据库的便捷方法

在CodeIgniter中使用多个数据库时出错

codeigniter codeigniter-2

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

在codeigniter中将数据从钩子传递到视图

我可以将数据从钩子传递到视图,如果可能请解释.

例如

 $hook['post_controller_constructor'][] = array(
    'class'    => 'Varify_user',
    'function' => 'user_project',
    'filename' => 'varify_project.php',
    'filepath' => 'hooks',
    'params'   => array('')
);
Run Code Online (Sandbox Code Playgroud)

我想发送一些数组数据varify_project.php(钩子文件)来查看.

php codeigniter codeigniter-2

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

Codeigniter 2.x - 身份验证+ ACL库

我需要一个Codeigniter 2.x ACL +身份验证库.

我需要给3个不同的管理员用户和2个不同的前端用户,并希望通过数据库动态设置所有内容.

请帮忙.

php codeigniter codeigniter-2

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

CodeIgniter控制器方法参数问题

我正在使用codeigniter 2.1,我定义了一个函数如下.

public function reset($email, $hash) {

}
Run Code Online (Sandbox Code Playgroud)

MVC architectureOOPS概念,如果我没有通过该功能无法执行parametersurl.但是在codeigniter中这个函数会被执行,所以我怎么能克服这个?请帮我找到解决方案.

parameters url codeigniter codeigniter-2

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

致命错误:使用codeIgniter调用未定义的函数validation_errors()

致命错误:使用codeIgniter调用未定义的函数validation_errors()这是我的comments.php视图

        <?php echo validation_errors(); ?>

        <?php echo form_open('news/comments'); ?>

            Name   <input type="text" name="comment_name"></input><br />
            Email  <input type="text" name="comment_email"></input><br />
            Comment<input type="text" name="comment_body"></input><br />
            <input type="submit" name="submit" value="Comment it" ></input>

        </form>
Run Code Online (Sandbox Code Playgroud)

这是我的news_model.php

<?php
class News_model extends CI_Model {

public function __construct()
{
    $this->load->database();
}



//set comment

public function set_comment()
{
$this->load->helper('url');
$this->load->helper('date');

$data_c = array(
    'comment_name' => $this->input->post('comment_name'),
    'comment_email' => $this->input->post('comment_email'),
    'comment_body' => $this->input->post('comment_body'),   
);

    return $this->db->insert('comments', $data_c);
}
Run Code Online (Sandbox Code Playgroud)

}

在这里我的控制器news.php

<?php
class News extends CI_Controller { …
Run Code Online (Sandbox Code Playgroud)

php codeigniter codeigniter-2

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