Код: Выделить всё
$.ajax({
url:'public_controller/get_deals_of_the_day',
method:'post',
dataType:'json',
success:function(data) {
console.log(data);
let i;
setInterval(function(){
var today = new Date();
var date = today.getDate()+'/'+(today.getMonth()+1)+'/'+today.getFullYear();
var time = today.getHours() + ":" + today.getMinutes() + ":" + today.getSeconds();
for(i in data){
var month = parseInt(data[i].expire_time.slice(0,2));
var day = parseInt(data[i].expire_time.slice(3,5));
var year = parseInt(data[i].expire_time.slice(6,10));
var format = data[i].expire_time.slice(16,19);
var hours = parseInt(data[i].expire_time.slice(11,13));
if(format == 'PM' || format == ' PM'){
hours = hours + 12;
}
// console.log(hours);
var mins = parseInt(data[i].expire_time.slice(14,16));
var cMonth = today.getMonth() + 1;
var cDay = today.getDate();
var cYear = today.getFullYear();
var cHours = today.getHours();
var cMins = today.getMinutes();
if (cDay >= day && cHours >= hours && cMins > mins) {
let delId = data[i].product_id;
console.log(delId);
$.ajax({
url:"public_controller/del_deal",
method:"post",
data:{delId: delId},
success:function(){
// alert('deal expired');
// location.reload(true);
},
error:function(e){
alert(e);
}
});
}
}
}
},1000);
что я делаю, так это то, что я извлекаю данные о таблице сделок дня из базы данных по мере загрузки домашней страницы и каждую секунду проверяю, достиг ли какой-либо продукт срока годности. Когда срок действия каких-либо продуктов истекает, он отправляет идентификатор контроллеру, чтобы удалить продукт из сделки таблицы. Мой метод контроллера:
Код: Выделить всё
public function del_deal(){
$deal_id = $this->input->post('delId');
$deal = $this->db->where('deal_id',$deal_id)->join('products','products.product_id =
deal_of_day.product_id')->get('deal_of_day')->row_array();
$update['price'] = $deal['old_price'];
$this->db->where('product_id',$deal['product_id'])->update('products',$update);
$this->db->where('deal_id',$deal_id)->delete('deal_of_day');
Условие проверяется. Я просто проверяю день, часы и минуты в целях тестирования. Проблема в том, что продукт не удаляется, если условия удовлетворяют.
Я создаю интернет-магазин в рамках codeigniter. Я раньше не создавал подобных функций, поэтому, если я это делаю или есть лучший способ сделать это, предложите мне, это будет очень полезно.
Подробнее здесь: https://stackoverflow.com/questions/619 ... is-expired
Мобильная версия