403禁止使用codeigniter

时间:2017-05-04 08:28:00

标签: jquery codeigniter

这是我的jquery:

<script type="text/javascript">
function notif() {
    $.ajax({

        url: "<?php echo base_url('application/controllers/Notification.php/countNotif');?>",
        ifModified:true,
        success: function(content){
            $('#notifications').html(content); //span où tu veux que ce nombre apparaisse
        }
    });
    setTimeout(notif, 10000);
}
notif();

这是我的控制器Notification.php:

<?php defined('BASEPATH') OR exit('No direct script access allowed');

class Notification extends CI_Controller
{
    var $type;//reservation request, comment, message
    var $to_user;
    var $from_user;
    var $reference;//comm id, message id
    var $timestamp;
    var $newcount;

    function __construct()
    {
        parent::__construct();
        $this->load->library('session');
        $this->load->model('notif_model');
    }

    public function countNotif()
    {
        $id =$this->session->userdata('id');
        $data['nb']=$this->notif_model->countNotif($id);
        $this->load->view('nombre',$data);
    }
}

1 个答案:

答案 0 :(得分:1)

我认为使用ajax访问控制器方法的方法是完全错误的。 您不需要指定完整路径。以下是使用ajax获取访问控制器的正确方法:

<script type="text/javascript">
    function notif() {
        $.ajax({
            url: "<?php echo base_url('index.php/Notification/countNotif');?>",
            ifModified:true,
            success: function(content){
                $('#notifications').html(content); //span où tu veux que ce nombre apparaisse
            }
       });
       setTimeout(notif, 10000);
    }
    notif();

这是我在我的项目中实施的工作解决方案。希望这对你也有帮助。

问候!