prefix . 'author_chat'; $function = filter_var($_POST['function'], FILTER_SANITIZE_STRING); $result = array(); switch ($function) { case( 'getState' ): $result = $wpdb->get_var("SELECT COUNT(*) FROM $author_chat_table"); break; case( 'send' ): $user_id = strip_tags(filter_var($_POST['user_id'], FILTER_SANITIZE_STRING)); $nickname = strip_tags(filter_var($_POST['nickname'], FILTER_SANITIZE_STRING)); $message = strip_tags(filter_var($_POST['message'], FILTER_SANITIZE_STRING)); if (( $message ) != '\n') { $result = array( 'user_id' => $user_id, 'nickname' => $nickname, 'content' => $message, 'date' => date('Y-m-d H:i:s') ); $wpdb->insert($author_chat_table, $result, array('%d', '%s', '%s', '%s')); } break; case( 'update' ): $lines = $wpdb->get_results("SELECT id, user_id, nickname, content, date FROM $author_chat_table ORDER BY id ASC", ARRAY_A); $text = array(); foreach ($lines as $line) { $text[] = $line; } $date = array_column($text, 'date'); array_walk_recursive($date, function( &$element ) { $element = strtotime($element); $element = date('Y-m-d,H:i:s', $element); }); $result = array( 'id' => array_column($text, 'id'), 'uid' => array_column($text, 'user_id'), 'nick' => array_column($text, 'nickname'), 'msg' => array_column($text, 'content'), 'date' => $date ); break; case( 'initiate' ): $lines = $wpdb->get_results("SELECT id, user_id, nickname, content, date FROM $author_chat_table ORDER BY id ASC", ARRAY_A); $text = array(); foreach ($lines as $line) { $text[] = $line; } $date = array_column($text, 'date'); array_walk_recursive($date, function( &$element ) { $element = strtotime($element); $element = date('Y-m-d,H:i:s', $element); }); $result = array( 'id' => array_column($text, 'id'), 'uid' => array_column($text, 'user_id'), 'nick' => array_column($text, 'nickname'), 'msg' => array_column($text, 'content'), 'date' => $date ); break; } echo wp_send_json($result); } ?>