function prepare_items() { global $wpdb; $query = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id !=1 "; if (isset($_POST['s'])) { $query .= " AND alias LIKE '%" . strip_tags($_POST['s']) . "%' "; } $orderby = !empty($_GET["orderby"]) ? mysql_real_escape_string($_GET["orderby"]) : 'id'; $order = !empty($_GET["order"]) ? mysql_real_escape_string($_GET["order"]) : 'DESC'; $sortable_columns = $this->get_sortable_columns(); $orderby = BUtils::sanitize_value_by_array($orderby, $sortable_columns); $order = BUtils::sanitize_value_by_array($order, array('DESC' => '1', 'ASC' => '1')); if (!empty($orderby) && !empty($order)) { $query .= ' ORDER BY ' . $orderby . ' ' . $order; } $totalitems = $wpdb->query($query); //return the total number of affected rows $perpage = 20; $paged = !empty($_GET["paged"]) ? mysql_real_escape_string($_GET["paged"]) : ''; if (empty($paged) || !is_numeric($paged) || $paged <= 0) { $paged = 1; } $totalpages = ceil($totalitems / $perpage); if (!empty($paged) && !empty($perpage)) { $offset = ($paged - 1) * $perpage; $query .= ' LIMIT ' . (int) $offset . ',' . (int) $perpage; } $this->set_pagination_args(array("total_items" => $totalitems, "total_pages" => $totalpages, "per_page" => $perpage)); $columns = $this->get_columns(); $hidden = array(); $sortable = $this->get_sortable_columns(); $this->_column_headers = array($columns, $hidden, $sortable); $this->items = $wpdb->get_results($query, ARRAY_A); }
function prepare_items() { global $wpdb; $query = "SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl"; $query .= " LEFT JOIN " . $wpdb->prefix . "swpm_membership_tbl"; $query .= " ON ( membership_level = id ) "; $s = filter_input(INPUT_POST, 's'); if (!empty($s)) { $query .= " WHERE user_name LIKE '%" . strip_tags($s) . "%' " . " OR first_name LIKE '%" . strip_tags($s) . "%' " . " OR last_name LIKE '%" . strip_tags($s) . "%' "; } $orderby = filter_input(INPUT_GET, 'orderby'); $orderby = empty($orderby) ? 'user_name' : $orderby; $order = filter_input(INPUT_GET, 'order'); $order = empty($order) ? 'DESC' : $order; $sortable_columns = $this->get_sortable_columns(); $orderby = BUtils::sanitize_value_by_array($orderby, $sortable_columns); $order = BUtils::sanitize_value_by_array($order, array('DESC' => '1', 'ASC' => '1')); $query .= ' ORDER BY ' . $orderby . ' ' . $order; $totalitems = $wpdb->query($query); //return the total number of affected rows $perpage = 20; $paged = filter_input(INPUT_GET, 'paged'); if (empty($paged) || !is_numeric($paged) || $paged <= 0) { $paged = 1; } $totalpages = ceil($totalitems / $perpage); if (!empty($paged) && !empty($perpage)) { $offset = ($paged - 1) * $perpage; $query .= ' LIMIT ' . (int) $offset . ',' . (int) $perpage; } $this->set_pagination_args(array("total_items" => $totalitems, "total_pages" => $totalpages, "per_page" => $perpage)); $columns = $this->get_columns(); $hidden = array(); $sortable = $this->get_sortable_columns(); $this->_column_headers = array($columns, $hidden, $sortable); $this->items = $wpdb->get_results($query, ARRAY_A); }