7ответ(ов) в теме
Добрый день.
Требуется ввести данные в дополнительно созданную таблицу, при создании заказа.
Это нужно для статистики, чтобы понимать, сколько было создано заказов в определённом городе и на определённом мероприятии. Пока только смог придумать, передавать данные заказа ( $order->order_id, $event_id, $order_room, order_status ) в отдельно созданную таблицу и если заказ будет оплачен, он будет удалён из этой таблицы. Но где вставить запрос на ввод в БД при создании заказа.

После создания поста, я именно так и попробовал, просто вставив в функцию запрос, но видимо как то по другому это нужно делать.
function insert_order(){
global $wpdb;
// Добавление данных заказа
if(is_admin()): $order_status = 4;
else: $order_status = $this->order_status;
endif;
$terms = get_the_terms(key($this->cart->places), 'event-type');
$args = apply_filters('evpl_pre_insert_order', array(
'user_data' => $this->user_data,
'order_price' => $this->cart->price,
'place_amount' => $this->cart->amount,
'order_details' => serialize($this->details),
'order_date' => current_time('mysql'),
'order_status' => $order_status,
'order_hash' => md5(current_time('mysql')),
'order_room' => $terms[0]->name
));
$result = $wpdb->insert(
WP_PREFIX.'evpl_orders',
$args
);
if(!$result)
return false;
return $wpdb->insert_id;
$wpdb->insert(
WP_PREFIX.'evpl_stats_order',
array(
'order_id' => $this->order_id,
'event_id' => $event_id,
'order_room' => $terms[0]->name,
'order_status' => "1")
);
}
Прошу помощи с этим.
function insert_order(){
global $wpdb;
// Добавление данных заказа
if(is_admin()): $order_status = 4;
else: $order_status = $this->order_status;
endif;
$terms = get_the_terms(key($this->cart->places), 'event-type');
$args = apply_filters('evpl_pre_insert_order', array(
'user_data' => $this->user_data,
'order_price' => $this->cart->price,
'place_amount' => $this->cart->amount,
'order_details' => serialize($this->details),
'order_date' => current_time('mysql'),
'order_status' => $order_status,
'order_hash' => md5(current_time('mysql')),
'order_room' => $terms[0]->name
));
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL | E_STRICT);
$result = $wpdb->insert(
WP_PREFIX.'evpl_orders',
$args
);
if(!$result)
return false;
$order_stats = array(
'order_id' => $this->order_id,
'event_id' => $event_id,
'order_room' => $terms[0]->name,
'order_status' => 1
);
$results = $wpdb->insert(
WP_PREFIX.'evpl_stats_order',
$order_stats
);
if(!$results)
return false;
return $wpdb->insert_id;
}
Страница просто обновляется и ничего не добавляется в таблицу, ошибок тоже нет.
Вы не имеете права на публикацию сообщений в этой теме