2017-02-27 6 views
0

期日が過ぎてから実行するスクリプトを作成しました。期限が過ぎているとステータスが更新され、期限切れになりますが、現在は問題が発生しています。私はそれがここでクエリ期限を過ぎてスクリプトを実行する

を実行するべきではないと私にはわからない期限切れの状態は私のコード

<?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

ドンを助け、この.hopeを試してみてください日付をテキストに変換してmaを行うths。 –

+1

あなたはcronジョブスクリプトを作成して時刻を設定したいと思いますが、 –

+0

を設定するとロジックが変換されません。 –

答えて

1

で更新したスクリプトを実行してそのWEHは、それが

 $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); 
      } 
     } 
関連する問題