2017-02-27 60 views
0

我已經創建了一個腳本,在截止日期結束後運行一次截止日期結束後,查詢將更新狀態並過期訂閱,但截至目前,我遇到了故障問題,問題是這WEH我運行腳本,它更新狀態以過期,我不知道,因爲它不應該運行查詢在截止日期後運行腳本

這裏是我的代碼

<?php 
    if($user_data['subscription'] == 'Activated'): 
     $sql_chk = $this->db->get_where('payment_trans', array('user_id' => $user_data['id'])); 
     $date_payed = $sql_chk->row()->date_payed; 
     $d_get  = new DateTime($date_payed); 
     $d_get->modify('+1 year'); 
     $new_year = $d_get->format('m-d-Y'); 
     $crnt_year = time(); 

     if($crnt_year > strtotime($new_year)) { 
      $data = array(
       'subscription' => 'Expired' 
      ); 

      $this->db->where('id', $user_data['id']); 
      $this->db->update('users', $data); 
     } 
    endif; 
?> 
+0

唐不會將日期轉換爲文本來執行ma部份。 –

+1

你想創建cron作業腳本和設置時間 –

+0

,但是當我不轉換然後邏輯不工作我 –

回答

1

請試試這個。希望它有助於

 $current_date = date("Y-m-d H:i:s"); 
     if($user_data['subscription'] == 'Activated') 
     { 
      $sql_chk = $this->db->where('date_payed <', $current_date)->where('user_id', $user_data['id']) 
           ->get('payment_trans'); 

      if ($sql_chk->num_rows() > 0) { 
       $data = array(
        'subscription' => 'Expired' 
       ); 
       $this->db->where('id', $user_data['id']); 
       $this->db->update('users', $data); 
      } 
     }