function uploadRows($tbl, $tname, $rcount, $offset = 0, $limit = 0, $bsize = 512, $filter = "") { global $wpdb; $clt = new BVHttpClient(); if (strlen($clt->errormsg) > 0) { return false; } $clt->uploadChunkedFile($this->getUrl("uploadrows") . "&offset=" . $offset . "&rcount=" . $rcount . "&tname=" . urlencode($tname), "uploadrows", "data"); if ($limit == 0) { $limit = $wpdb->get_var("SELECT COUNT(*) FROM {$tbl}"); } $srows = 1; while ($limit > 0 && $srows > 0) { if ($bsize > $limit) { $bsize = $limit; } $rows = $wpdb->get_results("SELECT * FROM {$tbl} {$filter} LIMIT {$bsize} OFFSET {$offset}", ARRAY_A); $srows = sizeof($rows); $data = array(); $data["offset"] = $offset; $data["size"] = $srows; $data["rows"] = $rows; $data["md5"] = md5(serialize($rows)); $str = serialize($data); $clt->newChunkedPart(strlen($str) . ":" . $str); $offset += $srows; $limit -= $srows; } $clt->closeChunkedPart(); $resp = $clt->getResponse(); if (array_key_exists('status', $resp) && $resp['status'] != '200') { return false; } return true; }