смена ТП клиентом в урфа на пхп

Технические вопросы по UTM 5.0
Ответить
Аватара пользователя
BlackJack
Сообщения: 35
Зарегистрирован: Чт янв 29, 2009 08:56
Откуда: Voskresensk

смена ТП клиентом в урфа на пхп

Сообщение BlackJack »

Подскажите пожалуйста как реализовать смену тарифного плана самим абонентом через урфа на пхп. функция должна быть прописана в файле user_functions.php??

Kayfolom
Сообщения: 746
Зарегистрирован: Вс фев 12, 2006 17:15

Сообщение Kayfolom »

$urfa_admin->rpcf_link_user_tariff($user_id, $account_id, $tariff_current, $urfa_next_tariff, $discount_period_id, $tariff_link_id);

В параметрах меняем только $urfa_next_tariff, остальные оставляем текущие.
Посмотрите тему Личный кабинет на готовом движке - там в плагине к джумле все полностью реализовано.

Функция есть на http://wiki.flintnet.ru

Аватара пользователя
BlackJack
Сообщения: 35
Зарегистрирован: Чт янв 29, 2009 08:56
Откуда: Voskresensk

Сообщение BlackJack »

помогите пожалуйста. ну никак не могу разобраться . . ((
есть всем известная функция в урфа пхп

Код: Выделить всё

function rpcf_user5_get_services() { //-0x4023
    $ret=array();
    if (!urfa_call(-0x4023)) {
	print "Error calling function ". __FUNCTION__ ."\n";
	return FALSE;
    }
    $x = urfa_get_data();
    $ret['count']=$x->DataGetInt();
    for &#40;$i=0;$i<$ret&#91;'count'&#93;;$i++&#41; &#123;
	$x = urfa_get_data&#40;&#41;;
	$service&#91;'id'&#93; = $x->DataGetInt&#40;&#41;;
	$service&#91;'service_id'&#93; = $x->DataGetInt&#40;&#41;;
	$service&#91;'service_type'&#93; = $x->DataGetInt&#40;&#41;;
	$service&#91;'service_name'&#93; = $x->DataGetString&#40;&#41;;
	$service&#91;'tariff_name'&#93; = $x->DataGetString&#40;&#41;;
	$service&#91;'discount_period'&#93; = $x->DataGetString&#40;&#41;;
	$service&#91;'cost'&#93; = $x->DataGetDouble&#40;&#41;;
	$service&#91;'discounted_in_curr_period'&#93; = $x->DataGetDouble&#40;&#41;;
	$ret&#91;'services'&#93;&#91;&#93;=$service;
    &#125;
    urfa_get_data&#40;&#41;;
    return $ret;
я её вызываю вот таким образом

Код: Выделить всё

$s = rpcf_user5_get_services&#40;&#41;;
в итоге мне нужно из нее извлеч $service['tariff_name']. как это сделать?? если пишу $s['tariff_name'], то не работает. . . подскажите пожалуйста . . .

Аватара пользователя
Voronok
Сообщения: 116
Зарегистрирован: Пт мар 14, 2008 19:21

Сообщение Voronok »

Делал это с помощью админки Магнума.

Алгоритм.
1. Удаляем услуги.
2. удаляем тарифный план.
3. Добавляем новый тарифный план.
4. Добавляем новые услуги.

Минус - при этом у абонента меняется расчетный период.

Пробовали через официальную админку установить другой следующий тарифный план, но столкнулись с глюком - новый тарифный план автоматически добавляется, а услуги нет.

Аватара пользователя
BlackJack
Сообщения: 35
Зарегистрирован: Чт янв 29, 2009 08:56
Откуда: Voskresensk

Сообщение BlackJack »

с тем делом я разобрался, а ваше сообщение немного не туда, вопрос заключался в том чтоб абонент сам себе менял тариф на следующий расчетный период. а по во просу который я написал с функцией, я просто из массива не могу извлеч необходимое, не получается что то . . ( подскажите как . .

mikkey finn
Сообщения: 1612
Зарегистрирован: Пт ноя 10, 2006 15:23

Сообщение mikkey finn »

$s['services'][$i]['tariff_name']
0<=$i<$s['count']

Аватара пользователя
BlackJack
Сообщения: 35
Зарегистрирован: Чт янв 29, 2009 08:56
Откуда: Voskresensk

Сообщение BlackJack »

mikkey finn писал(а):$s['services'][$i]['tariff_name']
0<=$i<$s['count']
а вторую строчку мне куда лепить?? мне надо чтобы это в определенном поле таблицы выдалось . . и что обозначает [$i] мне пишет ошибку
Notice: Undefined variable: i in /usr/local/www/mycab/login.php on line 28
Notice: Undefined index: in /usr/local/www/mycab/login.php on line 28

Kayfolom
Сообщения: 746
Зарегистрирован: Вс фев 12, 2006 17:15

Сообщение Kayfolom »

Вот готовая смена тарифа (один из моих плагинов к джумле) viewtopic.php?p=41188#41188

Используйте лучше готовый кабинет на джумле - все станет намного проще.

mikkey finn
Сообщения: 1612
Зарегистрирован: Пт ноя 10, 2006 15:23

Сообщение mikkey finn »

вторая строчка указывает, что $i - переменная цикла. Цикл в PHP задается совсем другим образом. Не так как написано, естественно.
За подробностями на тематические форумы сходи(можно в принципе посмотреть внимательно на текст функции, должно стать понятно).

Аватара пользователя
BlackJack
Сообщения: 35
Зарегистрирован: Чт янв 29, 2009 08:56
Откуда: Voskresensk

Сообщение BlackJack »

Kayfolom писал(а):Вот готовая смена тарифа (один из моих плагинов к джумле) viewtopic.php?p=41188#41188

Используйте лучше готовый кабинет на джумле - все станет намного проще.
задача принципиально не пользоваться движками. так то было бы проще намного, к тому же есть уже готовые кабинеты сделаные. заинсталил, прописал пути и параметры и вуаля - готово то что нужно . .
mikkey finn
можете мне подсказать каким образом в данном случае необходимо сделать . . .плиз . .

Kayfolom
Сообщения: 746
Зарегистрирован: Вс фев 12, 2006 17:15

Сообщение Kayfolom »

BlackJack писал(а):
Kayfolom писал(а):Вот готовая смена тарифа (один из моих плагинов к джумле) viewtopic.php?p=41188#41188

Используйте лучше готовый кабинет на джумле - все станет намного проще.
задача принципиально не пользоваться движками. так то было бы проще намного, к тому же есть уже готовые кабинеты сделаные. заинсталил, прописал пути и параметры и вуаля - готово то что нужно . .
Это ссылка на php код смены тарифа через urfa php, вы же это просили? Уберите лишнее и пользуйтесь.

Ответить