2015-08-14 3 views
2

привет всем я хочу, чтобы обновить функцию контроллера после 5 секунд автоматически я использую header('Refresh: 10.2'); внутри функции контроллера какфункция автоматического регулятора обновления в CodeIgniter

public function delete() 
    { 

     header('Refresh: 10.2'); 
     $current_time=date('H:i:s',strtotime("+3 hours")); 
     $email=$this->session->userdata['email']; 
     $end_time=$this->model_user->get_res_endtime($email); 
     if($current_time>$end_time || $current_time <'00:59:59') 
     { 
      $this->model_user->move_reserve($end_time,$email); 

      $this->model_user->up_qty_del($email); 

      $this->model_user->delete_reserve($end_time,$email); 
     } 

    } 

но обновить всю страницу также любой метод, который освежит только функция? Заранее спасибо

+0

Создать отдельную функцию для этого и вызвать его с помощью AJAX каждые 5 секунд. –

+0

@llan Hasanov вы можете рассказать код? –

+0

Я отправил ответ для вас, дайте мне знать, как это происходит. –

ответ

1

Для вашего запроса .. вы можете попробовать что-то вроде этого. Контроллер:

public function delete() 
{ 

    $current_time=date('H:i:s',strtotime("+3 hours")); 
    $email=$this->session->userdata['email']; 
    $end_time=$this->model_user->get_res_endtime($email); 
    if($current_time>$end_time || $current_time <'00:59:59') 
    { 
     $arr["message"] = "1"; 
     $this->model_user->move_reserve($end_time,$email); 
     $this->model_user->up_qty_del($email); 
     $this->model_user->delete_reserve($end_time,$email); 
     print(json_encode($arr)); 
     exit; 
    } 

} 

JQuery:

$(document).ready(function() { 
    (function delete() { 
     //run the request 
     $.ajax({ 
      type: "POST", 
      url: "Controller/Deletefunction", 
      async: true, //Hey browser! run the code 
      //if we prased data run: 
      success: function (data) { 
       /* we prase data (data can be anything) 
       * data is json_encoded data format coming from 
       */ 
       var obj = JSON.parse(data); 
       // if we prased data: 
       if (obj) { 
        console.log(obj); 
        // chrome console log should show here "success" 
        if (obj.count > 0) { 
         // Schedule the next request when the current one's complete 
       setTimeout(delete, 5000); 
      } 
     }); 
    })();