Опять про формулу :)

Jabar
Posts: 278
Joined: Thu Sep 20, 2012 3:32 pm

Опять про формулу :)

Post by Jabar »

Я все со своими баранами.
1. как то мы говорили про $config['allow_eval'] = true;
"но если дать выполнять пхп это потенцуиальная дыра"
Я конечно слабо разбираюсь в этом, но вроде как в темплейтах код пхп выполняется без ограничений. Внимание вопрос: Значит ли выполнение пхп в темплейтах, что это равноценная (тождественная) дыра?
Я это к тому, что сильно ли изменится безопасность если я включу allow_eval ?

2. Ну и есть ли возможность добавить в формулу переменную (таг) TOTAL_EFFECT (типа TOTAL_RELOWN) , которая считалась бы примерно так:
if ((100*($d[day][quality]+$d[day][quality_url])/($d[day][rd]+0.001)) > $d['max_prod_limit']) {
$click = ($d['max_prod_limit'] * $d[day][rd] / 100) ;
} else {
$click = ($d[day][quality]+$d[day][quality_url]+1) ;
};
$_POST[priority] = @round( (( $click / ($d['day']['od']+0.95) )*$d[trat])+($d[day][rd]/($d[day][rd]+1)*3))

ну добавить еще проверку что $d['max_prod_limit'] больше 0 .
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Опять про формулу :)

Post by admin »

Разница в следующем:

если все настроено нормально, то если кто-то получил парошль от админки то он может вставить код в темпелйт и этот код выполнится, но от апача.

а крон выполняется от юзера и соотв код вставленный в формулу выполнится от юзера.
Don't forget to run script update
Jabar
Posts: 278
Joined: Thu Sep 20, 2012 3:32 pm

Re: Опять про формулу :)

Post by Jabar »

admin wrote: этот код выполнится, но от апача.
а крон выполняется от юзера и соотв код вставленный в формулу выполнится от юзера.
понятно.
а по второму?
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Опять про формулу :)

Post by admin »

Да, таг будет в 51.
Don't forget to run script update
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Опять про формулу :)

Post by admin »

Пытаюсь понять что происходит в формуле, дабы не делать чистый копипаст
if ((100*($d[day][quality]+$d[day][quality_url])/($d[day][rd]+0.001)) > $d['max_prod_limit']) {
$click = ($d['max_prod_limit'] * $d[day][rd] / 100) ;
} else {
$click = ($d[day][quality]+$d[day][quality_url]+1) ;
};
Вычисляем макс число кликов
Допустим для теста числа от 0 до 100.
и ауты от 0 до 100
$_POST[priority] = @round( (( $click / ($d['day']['od']+0.95) )*$d[trat])+($d[day][rd]/($d[day][rd]+1)*3))
зачем тут $d[day][rd]/($d[day][rd] тоже самое деление и в чем магия умножить на 3 тут ?
Don't forget to run script update
Jabar
Posts: 278
Joined: Thu Sep 20, 2012 3:32 pm

Re: Опять про формулу :)

Post by Jabar »

Общая идея в следующем. Хотел трейд по эфективности. Грубо - это как овед, только вместо разности используем отношение. Т.е. Р (приорити)= ратио*клики/ауты . Но при этом, хотелось бы иметь все полезности, такие как кволити, ограничение макс продуктивности. Возможны какието ошибки в формуле.

((100*($d[day][quality]+$d[day][quality_url])/($d[day][rd]+0.001)) > $d['max_prod_limit'])
здесь идет проверка , что прода меньше положеного

$click = ($d['max_prod_limit'] * $d[day][rd] / 100) ;
} else {
$click = ($d[day][quality]+$d[day][quality_url]+1) ;
};

здесь в зависимости от проверки вычисляем общее количество кликов полученных от трейда. Единица прибавляется, чтобы $click не был равен 0 и ратио не занулялось. (для своеобразной поддержки нулевых трейдов при излишках трафа)
$_POST[priority] = @round( (( $click / ($d['day']['od']+0.95) )*$d[trat])+($d[day][rd]/($d[day][rd]+1)*3))
0,95 - для того , чтоб если аутов нет (а клики есть), то чтоб немножко приподнять такой трейд, но именно немножко.
зачем тут $d[day][rd]/($d[day][rd] тоже самое деление
задача , чтобы трейд который прислал один или несколько инов, (при этом если прода равна нулю, т.е. нет кликов) имел некоторое преимущество перед трейдом который вобще ничего не прислал (инов 0).
и в чем магия умножить на 3 тут
Сказано же - магия! :) Задача в том, что бы трейд, приславший 5 инов с нулевой продой, имел преимущество перед трейдом, приславшим 1 ин с нулевой продой.


Сейчас пока использую такой вариант:
((100*($d[day][quality]+$d[day][quality_url])/($d[day][rd]+0.001)) > $d['max_prod_limit']) ? $click = ($d['max_prod_limit'] * $d[day][rd] / 100) : $click = ($d[day][quality]+$d[day][quality_url]+1);
$_POST[priority] = @round( (( $click / ($d['day']['od']+0.9) )*$d[trat])+($d[day][rd]/($d[day][rd]+1)*3))

Прошу обратить внимание, что коэфициэнт 0,95 был заменен на 0,9 - вроде так лучше.
Вроде бы формула работает и просто так не переливает и чуточку взбадривает умершие трейды.
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Опять про формулу :)

Post by admin »

Те по факту это не параметр а целая формула, но вы ее не испольузете потому что там есть if который не работает без eval ?
Don't forget to run script update
Jabar
Posts: 278
Joined: Thu Sep 20, 2012 3:32 pm

Re: Опять про формулу :)

Post by Jabar »

Те по факту это не параметр а целая формула
Ну наверное. Назовите как удобнее, лишь бы работало.
но вы ее не испольузете потому что там есть if который не работает без eval ?
да. Включил на некоторых сайтах, но вроде как не хорошо использовать eval , раз это приводит к ухудшению безопастности. Еслибы придумать, как использовать ограничение по проде $d['max_prod_limit'] без if (или другого оператора выбора) был бы благодарен, тогда все решалось бы без eval.

Возможно это будет интересно еще комуто, может быть и нет, не знаю. Но знаю, что не удовлетворенность текущей формулой есть у многих.


Возможно стоит внести не как параметр , а как тип трейда. Есть типа owed, есть capped, но абсолютное большинство используют normal . Почему бы не ввести effect ?
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: Опять про формулу :)

Post by admin »

Тогда все проще.

$d[prod][day_total] автоматически лимитируется в соотв с $d['max_prod_limit']
Don't forget to run script update
Jabar
Posts: 278
Joined: Thu Sep 20, 2012 3:32 pm

Re: Опять про формулу :)

Post by Jabar »

А учитывает ли $d[prod][day_total] настройки кволити? Ну там гуд,бэд страны, прокси, яваскрипт ?

Или по другому. Я правильно понял, что
($d[day][quality]+$d[day][quality_url]) / $d[day][rd] = $d[prod][day_total]
или $d[prod][day_total] опирается на уники? тогда
($d[day][quality]+$d[day][quality_url]) / $d[day][ud] = $d[prod][day_total]
Post Reply