Давай будем учиться :)
Для решения задачи надо:
1. Понимать, кто есть реферер, лучше тащить из базы.
2. Обозначить, какой процент от стоимости пойдет рефереру (1%, 5% или 10%?)
3. Начислять средства рефереру.
Итак, пойдем по порядку.
1. В скрипте есть сессионная переменная
$refid = $_SESSION["referer_id"];
Которая, как кажется, говорит нам о том, что там хранится id рефа. Но лучше не рисковать, неизвестно, попала ли туда у тебя переменная при авторизации на сайт или нет. Можно вытащить из базы. Такие вещи если хранятся в базе, лучше тащить оттуда. Тогда получается, надо сделать запрос, вытащить рефа, зная свой id ($usid). Инфа о рефах хранится в db_users_a, надеюсь, что знаешь. Тогда запрос будет таким:
$db->Query("SELECT referer_id FROM db_users_a WHERE id = '$usid' LIMIT 1");
$refid = $db->FetchRow(); // FetchRow() - потому что вытягиваем не массив данных, а всего лишь одно значение/строку.
2. Определим процент для рефа. К примеру пусть будет 5%.
Заведем переменную для хранения, можно ниже выполненного запроса:
Понятно, почему поделили на 100? Надеюсь, да. Переходим далее.
3. Нужно теперь считать процент от покупки для рефа. Смотрим запрос:
$db->Query("UPDATE db_users_b SET money_b = money_b - $need_money, $citem = $citem + 1,
last_sbor = IF(last_sbor > 0, last_sbor, '".time()."') WHERE id = '$usid'");
Видим, что переменная $need_money отнимает деньги у пользователя. Это ясно, как день. Найдем место, где переменная объявлена:
$need_money = $sonfig_site["amount_".$citem];
Ниже допишем нашу новую переменную:
$money_for_ref =$need_money*$percent_for_ref;
Дело почти сделано, теперь мы храним в переменной
$money_for_ref 5% от стоимости персонажа. Осталось прибавить эту сумму рефу. Делаем запрос при положительном выполнении скрипта, можно после запроса на съем денег с пользователя и добавления персонажа. Добавим такой код:
$db->Query("UPDATE db_users_b SET money_b=money_b+'$money_for_ref' WHERE id='$refid'");
Проверяем и радуемся, наверное :)