items back in personal data download, chunked this time
This commit is contained in:
parent
f20464112f
commit
8f31935b7d
2 changed files with 29 additions and 3 deletions
2
boot.php
2
boot.php
|
@ -2,7 +2,7 @@
|
|||
|
||||
set_time_limit(0);
|
||||
|
||||
define ( 'FRIENDIKA_VERSION', '2.1.925' );
|
||||
define ( 'FRIENDIKA_VERSION', '2.1.926' );
|
||||
define ( 'DFRN_PROTOCOL_VERSION', '2.1' );
|
||||
define ( 'DB_UPDATE_VERSION', 1044 );
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ function uexport_init(&$a) {
|
|||
}
|
||||
$contact = array();
|
||||
$r = q("SELECT * FROM `contact` WHERE `uid` = %d ",
|
||||
local_user()
|
||||
intval(local_user())
|
||||
);
|
||||
if(count($r)) {
|
||||
foreach($r as $rr)
|
||||
|
@ -28,7 +28,7 @@ function uexport_init(&$a) {
|
|||
|
||||
$profile = array();
|
||||
$r = q("SELECT * FROM `profile` WHERE `uid` = %d ",
|
||||
local_user()
|
||||
intval(local_user())
|
||||
);
|
||||
if(count($r)) {
|
||||
foreach($r as $rr)
|
||||
|
@ -41,6 +41,32 @@ function uexport_init(&$a) {
|
|||
header("Content-type: text/json");
|
||||
echo str_replace('\\/','/',json_encode($output));
|
||||
|
||||
$r = q("SELECT count(*) as `total` FROM `item` WHERE `uid` = %d ",
|
||||
intval(local_user())
|
||||
);
|
||||
if(count($r))
|
||||
$total = $r[0]['total'];
|
||||
|
||||
// chunk the output to avoid exhausting memory
|
||||
|
||||
for($x = 0; $x < $total; $x += 500) {
|
||||
$item = array();
|
||||
$r = q("SELECT * FROM `item` WHERE `uid` = %d LIMIT %d, %d",
|
||||
intval(local_user()),
|
||||
intval($x),
|
||||
intval(500)
|
||||
);
|
||||
if(count($r)) {
|
||||
foreach($r as $rr)
|
||||
foreach($rr as $k => $v)
|
||||
$item[][$k] = $v;
|
||||
}
|
||||
|
||||
$output = array('item' => $item);
|
||||
echo str_replace('\\/','/',json_encode($output));
|
||||
}
|
||||
|
||||
|
||||
killme();
|
||||
|
||||
}
|
Loading…
Reference in a new issue