// пользователь 12 сделал покупку, проходим по всем его рефам и каждому начисляем процент
$data['uid'] = 12; // соот-но первичная, входная инфа нам известна
do {
$dataRef = $this->db->column(
'SELECT ref FROM accounts WHERE id = :id',
['id' => $data['uid']]
);
$dataLvl = $this->db->column(
'SELECT lvl FROM accounts WHERE id = :id',
['id' => $data['uid']]
);
$percent = 15;
if ($dataLvl == 1) $percent = 15;
if ($dataLvl == 2) $percent = 10;
if ($dataLvl == 3) $percent = 5;
if ($dataLvl == 4) $percent = 3;
if ($dataLvl == 5) $percent = 1;
if ($dataRef > 0) {
$refSum = round((($data['amount'] * $percent) / 100), 2);
$params = [
'sum' => $refSum,
'id' => $dataRef,
];
$this->db->query('UPDATE accounts SET refBalance = refBalance + :sum WHERE id = :id', $params);
}
$data['uid'] = $dataRef;
}while($dataRef > 0);
$massiv = json_decode(file_get_contents("php://input"));