标签: codeigniter

在深入研究框架(如Zend,CakePHP)之前,您是否需要非常了解PHP?

我问这与Javascript和jQuery相比.我只能对Javascript有基本的了解而学习jQuery(但我在使用jQuery时不断学习Javascript).

PHP及其框架是否相同?我是否可以开始深入研究只具有PHP基础知识的框架(然后沿途学习PHP(原样))?或者在开始使用框架之前,我是否需要深入了解PHP?

php frameworks zend-framework cakephp codeigniter

6
推荐指数
1
解决办法
2661
查看次数

Codeigniter在运行时更改数据库配置

我可以在控制器中更改每个方法的数据库配置吗?

$db['default']['db_debug'] = TRUE;
Run Code Online (Sandbox Code Playgroud)

默认值是TRUE,虽然我需要在某种方法中将其设为false以捕获错误并执行其他操作(例如show 404 page).

当我尝试$this->config->load('database')它失败.

另一个问题 :

我可以检查一个不正确的查询并将其捕获到某些变量而不是将其显示给除了将db_debug配置设置为以外的用户FALSE吗?

codeigniter

6
推荐指数
2
解决办法
7543
查看次数

重定向到上一页时如何发送变量数据

在完成特定任务后,我使用以下代码将用户重定向到上一页.

        if (isset($_SERVER['HTTP_REFERER']))
         {
         $this->session->set_userdata('previous_page', $_SERVER['HTTP_REFERER']);
         }
         else
         {
         $this->session->set_userdata('previous_page', base_url());
         }
Run Code Online (Sandbox Code Playgroud)

我在控制器中使用上面的代码,在另一个控制器中使用以下代码.

    .... some other stuffs... I am updating database values here....

        $this->db->where('t_expenseid', $t_expenseid);
        query=$this->db->update('teacherexpense', $data); 


        redirect($this->session->userdata('previous_page'));
Run Code Online (Sandbox Code Playgroud)

上面的代码工作正常,但我面临的问题是我想发送一个带有重定向的成功消息,以便当上一页加载成功消息时弹出(我已经有了jquery).为此我在重定向上面添加了以下代码,但我不知道如何发送$ data或消息以及重定向.如果我能够发送它如何检索上一页的控制器中的值.

 $data['msg']='Information Has been Successfully Inserted'; 
Run Code Online (Sandbox Code Playgroud)

你能告诉我如何发送然后检索它吗?

谢谢 :)

codeigniter codeigniter-2

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

注销codeigniter

我在codeigniter中有一个注销控制器:

<?php

class Logout extends MY_Controller {

    function index()
    {

        $this->session->sess_destroy();
        redirect('index.php');
    }
}
Run Code Online (Sandbox Code Playgroud)

这会让我退出,但是当我在登录后调用另一个控制器时,比如"/ site/addnewpost",这只会让我再次登录,好像之前没有销毁过sassion.为什么会这样?

php codeigniter

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

Facebook getUser()返回0

我正在使用带有Codeigniter的PHP SDK实现Facebook登录.我得到Facebook登录弹出窗口,点击登录,但我无法检索用户的ID - 它总是返回0.

我已将facebook.php和base_facebook.php文件放在我的库文件中,并将其作为库中的库包含在此处的教程之后.

谁能告诉我他们的想法是什么?我使用以下代码 -

查看 - Facebook登录按钮

  <div id="fb-root"></div>
  <script>
    window.fbAsyncInit = function() {
      FB.init({
        appId      : '<?php echo $this->config->item('facebook_app_id'); ?>',
        status     : true, 
        cookie     : true,
        xfbml      : true,
        oauth      : true,
      });

          FB.Event.subscribe('auth.login', function() {
            window.location='<?php echo base_url(); ?>auth_other/fb_signin/';
          });

    };
    (function(d){
       var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
       js = d.createElement('script'); js.id = id; js.async = true;
       js.src = "//connect.facebook.net/en_US/all.js";
       d.getElementsByTagName('head')[0].appendChild(js);
     }(document));

  </script>
  <div class="fb-login-button">Login with Facebook</div>
Run Code Online (Sandbox Code Playgroud)

控制器 - auth_other/fb_signin

    function …
Run Code Online (Sandbox Code Playgroud)

php authentication facebook login codeigniter

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

在Codeigniter中,如何将第三个参数传递给回调(表单验证)?

我目前正在使用Form Validation类(在Codeigniter上)和设置规则.

它有两个参数(codeigniter.com/user_guide/libraries/form_validation.html):

$this->form_validation->set_rules('username', 'Username', 'callback_test[abc]');
Run Code Online (Sandbox Code Playgroud)

但是第三个参数呢?还有第四个......?可能吗?

validation codeigniter callback validationrules codeigniter-2

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

具有CodeIgniter上传类的文件权限

嗨,我需要将权限777放到我上传的文件中,但我没有在codeigniter中找到任何上传文件的文档...是否可以将权限777与codeigniter的上传类放在一起?

$ group_id = $ this-> input-> post('group_id',TRUE);

   // unlink('static/images/uploads/44');
  // rmdir('static/images/uploads/45');

    $dir = is_dir('../www/static/images/uploads/'.$group_id);
    if($dir){
            $config['upload_path'] = '../www/static/images/uploads/'.$group_id;
            echo "test";
    }

    else{
        mkdir('../www/static/images/uploads/'.$group_id, 0777);
        $config['upload_path'] = '../www/static/images/uploads/'.$group_id;
    }


    $config['allowed_types']     = 'docx|pdf|doc|gif|jpg|png|tiff';
    $config['max_size'] = '10000000';
    $config['max_width']  = '999999';
    $config['max_height']  = '99999';
    $this->load->model('Teacher_model');



    $this->load->library('upload', $config);

    if ( ! $this->upload->do_upload())
    {
        $error = array('error' => $this->upload->display_errors());

       print_r($error);

        //$this->load->view('school/teacher/upload_form', $error);
    }
    else
    {
        $data = array('upload_data' => $this->upload->data());



            $name = $this->input->post('name', TRUE);
            $path = $data['upload_data']['file_name'];
            $group_id = $this->input->post('group_id', TRUE);

            $this->Teacher_model->add_ressources($group_id,$name,$path);


         redirect('school/teachers/#tabs_group_ressource'.$group_id, 'location', 301); …
Run Code Online (Sandbox Code Playgroud)

php codeigniter

6
推荐指数
1
解决办法
9966
查看次数

Paypal IPN问题与并行付款

我正在使用这个http://www.binpress.com/app/paypal-adaptive-payments-pro-codeigniter-library/140库,我正在使用它作为我的ipn监听器来进行codeigniter项目 - http:// pastebin.com/pMb7Zhz3.

基本上我正在使用上面的paypal库进行并行交易,这样当用户进行支付/捐赠时,它会向2个不同的账户汇款.一旦交易完成,paypal会将数据发送到我的ipn监听器,它会解析1个客户的信息,如果我将其保留'IPNNotificationURL' => ''在我的代码中并进入paypal并设置ipn url.

我正在尝试获取两个帐户的IPN信息,而不必让两个帐户都在他们的paypal设置中设置ipn url.当我设置时'IPNNotificationURL' => 'http://example.com/paypal_ipn',我仍然获得1个帐户的ipn信息,但是我收到Array to string conversion on line 11了我的听众的警告.我如何解决这个问题,如果我这样做,我会从这两个帐户获取ipn信息吗?

这是上面图书馆的付费方式,我用于并行付款

function Pay()
    {
        // Prepare request arrays
        $PayRequestFields = array(
                                'ActionType' => 'PAY',                              // Required.  Whether the request pays the receiver or whether the request is set up to create a payment request, but not fulfill the payment until the ExecutePayment is called.  Values are:  PAY, CREATE, PAY_PRIMARY
                                'CancelURL' => '',      // …
Run Code Online (Sandbox Code Playgroud)

php codeigniter paypal paypal-ipn

6
推荐指数
1
解决办法
2654
查看次数

在codeigniter电子邮件中添加额外的标头信息

我想发送一些关于从codeigniter库发送的电子邮件的额外信息.有没有办法配置或添加这个?

我想对来自我网站的所有外发邮件进行分类.我需要包含sendgrid类别标题以进行跟踪.

php email codeigniter html-email

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

Codeigniter使子目录控制器工作

我无法使页面加载我想要的控制器.

例如,我希望我的网站加载为localhost/sitename/catergory1/catergory2,其中catergory 1是它自己的控制器,2是一个方法.所以我尝试将其添加到我的routes.php:

$route['catergory1'] = 'catergory1/cat1';
Run Code Online (Sandbox Code Playgroud)

我控制器文件设置为:
-Controller
   -Home.php
   -catergory1 < -子文件夹
       -cat1.php
,我想会引起笨加载器"的CAT1"的CATERGORY 1文件夹内,而是当我去到本地主机/网站名称/ catergory1它只是加载我的默认控制器的"家".我已经尝试将它放在routes.php的uri路由和保留路由部分,但它仍然无法正常工作.这可能是非常简单的事情,但对此我是新手.

控制器本身只是因为它与它们有关:
家庭控制器:

class Home extends CI_Controller {  
    function index() {  
        $this->load->view('home');  
    }
}
Run Code Online (Sandbox Code Playgroud)

Cat1控制器:

class Cat1 extends CI_Controller{  
    function index() {  
        $this->load->view('cat1');  
    }  
}
Run Code Online (Sandbox Code Playgroud)

我只是愚蠢而错过了一些简单的事情吗?
谢谢.

controller codeigniter

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