У меня есть функция, которая вставляет данные в базу данных SQL, используя функцию $ wpdb-> insert. Одним из данных, которые я хотел бы, является время, в которое была введена строка. Однако использование current_time () возвращает 0000-00-00 00:00:00.
Может кто-нибудь помочь, пожалуйста?
public function log_participant( $product_id, $current_user_id, $ticketnumber, $order_id ) {
global $wpdb;
$log_bid = $wpdb->insert(
$wpdb->prefix . 'wc_lottery_log', array(
'userid' => $current_user_id,
'lottery_id' => $product_id,
'ticketid' => $ticketnumber,
'orderid' => $order_id,
'date' => current_time( 'mysql' ),
), array( '%d', '%d', '%d', '%s' )
);
return $wpdb->insert_id;
}
foreach ( $order_items as $item_id => $item ) {
if ( function_exists( 'wc_get_order_item_meta' ) ){
$item_meta = wc_get_order_item_meta( $item_id, '' );
} else{
$item_meta = method_exists( $order, 'wc_get_order_item_meta' ) ? $order->wc_get_order_item_meta( $item_id ) : $order->get_item_meta( $item_id );
}
$product_id = $this->get_main_wpml_product_id( $item_meta['_product_id'][0] );
$product_data = wc_get_product( $product_id );
if ( $product_data && $product_data->get_type() == 'lottery' ) {
update_post_meta( $order_id, '_lottery', '1' );
add_post_meta( $product_id, '_order_id', $order_id );
delete_post_meta( $product_id, '_order_hold_on', $order_id );
$log_ids = array();
for ( $i = 0; $i < $item_meta['_qty'][0]; $i++ ) {
add_post_meta( $product_id, '_participant_id', $order->get_user_id() );
$participants = get_post_meta( $product_id, '_lottery_participants_count', true ) ? get_post_meta( $product_id, '_lottery_participants_count', true ) : 0;
update_post_meta( $product_id, '_lottery_participants_count', intval( $participants ) + 1 );
$this->add_lottery_to_user_metafield( $product_id, $order->get_user_id() );
$ticketnumber = $this->add_lottery_ticket_number($product_id);
$log_ids[] = $this->log_participant( $product_id, $order->get_user_id(), $ticketnumber, $order_id, $item );
}
do_action( 'wc_lottery_participate', $product_id, $order->get_user_id(), $order_id, $log_ids, $item, $item_id );
}
}