Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.94/64: Рейтинг темы: голосов - 64, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 39

Генератор результатов футбольных матчей

02.12.2016, 06:56. Показов 14289. Ответов 43
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, хочу попросить помощи в написание/ресурсов/советов одного интересующего меня php кода (Таком себе упрощенному генераторе футбольных матчей)
Сам я неплохо разбираюсь в html, css и веб графике, но php пока весьма трудный для меня. Перейду непосредственно к делу. За помощь, готов помочь в графике
Мне нужен код, чтобы я его залил на хост и он отображался следующим образом:
Простая страничка с регистрацией и формой входа(логин, пароль), после авторизации появляются ячейки (Возможно чат для зарегистрированных пользователей, но это абсолютно не обязательно), который подлежат заполнению:
Эмблема и Название команды --- Эмблема и Название команды (Выбор уже из существующих вариантов)
1 показатель --- 1 показатель
2 показатель --- 2 показатель
3 показатель --- 3 показатель
4 показатель --- 4 показатель
5 показатель --- 5 показатель
6 показатель --- 6 показатель
7 показатель --- 7 показатель
Начать генерацию

Как должна происходить генерация? (Определение победителя по голам)
- Есть 7 показателей (которые я ввожу сам, без всяких баз данных)
- Должен быть небольшой процент того, что даже если одна из команд сильнее, то она может проиграть, то есть такая себе рандомность, но процент должен быть не большим
- Результат должен выводиться в голах (Очень важно)

После чего сам результат должен быть опубликован на отдельной страничке, вместе с эмблемами, названием команд и результатом самого матча.

Что касается оформления, то тут я справлюсь, а вот структурно это всё написать, не в силах. Это не коммерческий проект, просто с друзьями любим, проводить различного рода карьеры по футболу и хочется свою закрытую комнатку. Простите, если где-то наглею. Понимаю, что можно постепенно освоить этот язык и не отнимать чье-то время, но надеюсь найти энтузиастов и отзывчивых людей.

P.S. Со временем обязательно выучу язык
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.12.2016, 06:56
Ответы с готовыми решениями:

Генератор футбольных матчей
Здравствуйте создал сайт на ucoz'е собираюсь из него делать on-line футбольного менеджера вот теперь есть проблема уже 3 месяца ищу...

генератор матчей
Вобщем я не силен в програмирование, но мне надо сделать одно делj: Генератор Матчей: жилательно попробывать простенько на языках html...

Написать программу результатов матчей футбольных команд (Используя контейнер map)
Помогите пожалуйста, никогда не имела дела с контейнерами((( Задание: футбольные команды (через map). Пользователь вводит название...

43
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 39
03.12.2016, 23:59  [ТС]
Студворк — интернет-сервис помощи студентам
А в чем отличие алгоритмов?

Добавлено через 47 минут
А в чем разница алгоритмов?

Добавлено через 10 часов 28 минут
Подскажите пожалуйста касательно ещё одного вопроса. Можно ли сделать страничку с формой входа, когда пользователь прошёл авторизацию, затем он попадает на страничку команды, которая за ним закреплена, а там есть бюджет этого клуба и возможность купить карточку(два вида), при нажатие на которую рандомно выпадает карточка рандомного игрока, вот пример: http://www.futhead.com/packs/open/fifa-17/

Можно ли как-то воспользоваться базой этого сайта? И если есть примеры как это сделать?
0
Заблокирован
04.12.2016, 03:30
Цитата Сообщение от Zloben Посмотреть сообщение
А в чем отличие алгоритмов?

Добавлено через 47 минут
А в чем разница алгоритмов?

Добавлено через 10 часов 28 минут
Подскажите пожалуйста касательно ещё одного вопроса. Можно ли сделать страничку с формой входа, когда пользователь прошёл авторизацию, затем он попадает на страничку команды, которая за ним закреплена, а там есть бюджет этого клуба и возможность купить карточку(два вида), при нажатие на которую рандомно выпадает карточка рандомного игрока, вот пример: http://www.futhead.com/packs/open/fifa-17/

Можно ли как-то воспользоваться базой этого сайта? И если есть примеры как это сделать?
нет,это тебе писать просто так не будут

во первых надо видеть сам сайт и его внутренний код,а вслепую что то программмировать про "карточки" это бред

Так че с основным заданием? внедрил какую нибудь версию??
0
04.12.2016, 11:34

Не по теме:

мне уже неинтересно. Это тогда мне делать нечего было, от скуки решил вспомнить былое.. :pardon:

0
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 39
04.12.2016, 18:43  [ТС]
KOPOJI, установил, только сама генерация не работает. По крайне мере результаты не показывает
http://www.fpmanager.h1n.ru/fpm/

Ocrex, http://www.fpmresult.h1n.ru/futbol.php Я так понял надо ввести пароль, но он не вводится

Добавлено через 39 минут
KOPOJI, всё работает, то я просто с файлом немного натупил. Но если я, допустим, ставлю одинаковые характеристики везде по 700 и сыгранность по 10, то конечный счёт очень различается. Пробовал и одной команде 700, а второй 100, и у той которой 100, выигрывала в +7/8 мячей неоднократно.

Ocrex, вводил много раз "Генерация" как указано в архиве, но никаких действий не происходит.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
04.12.2016, 19:01
Цитата Сообщение от Zloben Посмотреть сообщение
конечный счёт очень различается
А как вы хотели? Счет генерируется при помощи mt_rand, чистый рандом. Придумайте другой алгоритм, который будет менее случайным, и поменяйте..
0
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 39
04.12.2016, 19:05  [ТС]
KOPOJI,
Вы извините, я ни в коем случае не хотел вас обидеть Я просто думал, что генерация прописана по тому алгоритму который я написал, просто тогда непонятно зачем вообще характеристики эти.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
04.12.2016, 19:14
я и не собирался обижаться. В файле result.php есть строчки с вызовом метода setLucky. Проставьте 0 или 1 вместо указанных там, и тогда характеристики будут иметь бОльшее значение.
0
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 39
04.12.2016, 19:18  [ТС]
KOPOJI, Поставил, попробовал поиграться с характеристиками, но пока всё равно сильно большая разница
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
04.12.2016, 21:11
Замените соответствующий код на такой и посмотрите
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
trait ItIsMagicLol
{
    public function __call($method, $args)
    {
        if(!preg_match('~^(set|get)([A-Z])([_A-Za-z0-9]*)$~', $method, $m))
            throw new Exception('AAAA, WTF method!?');
        $propName = strtolower($m[2]) . $m[3];
        if (!property_exists($this, $propName))
            throw new Exception('AAAA, WTF property!?');
        if($m[1] == 'get')
        {
            if($args)
                throw new Exception('AAAA, WTF property args!?');
            return $this->$propName;
        }
        if(count($args) !== 1)
            throw new Exception('AAAA, WTF method args!?');
 
        $this->$propName = $args[0];
 
        return $this;
    }
    public function setValues(array $data)
    {
        foreach($data as $k => $v)
            $this->{'set' . ucfirst($k)}($v);
    }
}
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
    public function calculateResult(Team $one, Team $two)
    {
        $attackOne = $one->getTotalAttack() - $two->getTotalProtection();
        $attackTwo = $two->getTotalAttack() - $one->getTotalProtection();
 
        //clear values
        $this->resultOne = $this->resultTwo = 0;
 
        if($attackOne > 0 || $one->getLucky())
            $this->resultOne = rand(0, $one->getMaxgoals());
        if($attackTwo > 0 || $two->getLucky())
            $this->resultTwo = rand(0, $two->getMaxgoals());
    }
PHP
1
2
3
4
5
6
7
8
9
    //first team
    $first = new Team();
    $first->setLucky(1);
    $first->setValues($data[0]);
 
    //second team
    $second = new Team();
    $second->setLucky(0);
    $second->setValues($data[1]);
0
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 39
04.12.2016, 21:56  [ТС]
KOPOJI, уже намного лучше, круто что когда явное примущество команды, то соответственно и такой счёт + маленький процент рандом тоже есть.

Такой вопросик, ты мне можешь объяснить по каком принципу ты делал генерацию?

Добавлено через 3 минуты
И хотелось бы ещё попросить, чтобы сделать вывод результатов на отдельную страницу с базов, как это сделал Ocrex
0
Заблокирован
05.12.2016, 00:35
Цитата Сообщение от Zloben Посмотреть сообщение
KOPOJI,
Ocrex, http://www.fpmresult.h1n.ru/futbol.php Я так понял надо ввести пароль, но он не вводится

Ocrex, вводил много раз "Генерация" как указано в архиве, но никаких действий не происходит.
не вижу,страница не доступна

пароль же просто отключить на время теста...у меня самая нормальная версия на странице futbol2.php,если ты скопировал этот код на страницу futbol.php - как раз пароль не сработает )

там же в форме указано action=futbol2.php и на кнопке "Генерировать" тоже указано action="futbol2.php",просто тебе при копировании страниц надо наладить

а если на время отладки надо отключить пароль - то напиши заранее $del_slovo3='Генерация';
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 <?
 
$del_slovo3='Генерация';             //пароль прописываем чтобы не вводить
 
 //проверка пароля
if($del_slovo3=='Генерация') {   setcookie ("del_slovo3", $del_slovo3, time() + 60*60*24*2); } else  if(isset($_COOKIE['del_slovo3']))  { echo '<br>считалось='.$del_slovo3; } ?>
 
 
 <? if($del_slovo3<>'Генерация') { ?>
 <br><br><br><br><br><br><br><br>
 <center>
<FORM method=post action="futbol.php">
<input type="text" name="del_slovo3" class=button size=90% maxlength=10 value='Пароль - "Генерация"'>
  </form>
    </center>                       <? } 
                           
 
 if($del_slovo3=='Генерация') {
 
//проверка пароля
?>
0
0 / 0 / 0
Регистрация: 04.12.2016
Сообщений: 27
05.12.2016, 00:40
Ocrex, напишите пожалуйста мне в личку

Добавлено через 1 минуту
Ocrex, Передача текста с формы в на почту не меняя formaction помогите пожалуйста
0
Заблокирован
05.12.2016, 01:13
Zloben, я посмотрел,все ясно

у тебя 3 разные страницы...и при вводе пароля в форме указано неправильно :

я ввожу пароль на странице futbol2.php и перекидывает на страницу futbol.php ,ты наверно редактировал это поле

<FORM method=post action="futbol2.php">

займись пока страницей futbol2.php и в форме и на кнопке "Генерировать" укажи <FORM method=post action="futbol2.php">

Добавлено через 29 минут
обьяви пароль на время,чтобы не мучаться :

$del_slovo3='Генерация'; //пароль прописываем чтобы не вводить
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
05.12.2016, 10:03
Цитата Сообщение от Zloben Посмотреть сообщение
по каком принципу ты делал генерацию?
По тому, что ты говорил
Цитата Сообщение от Zloben Посмотреть сообщение
Допустим сначала считаем сколько забьет Арсенал (Атака 198+30%( от атаки - это сыгранность)=257,4 против защиты Динамо 178+60%=284, по разнице у Арсенала -26.6 Соответственно Арсенал по силе не должен забить, если конечно не сыграет роль % случая везения.
Теперь также считаем в другую сторону Динамо Атака 171+60%=273,6 против защиты Арсенала 196+30%=254,8, по разнице у Динамо +18,8 и соответственно Динамо с большей долей вероятности должно забить.
считаем атаку (getTotalAttack) и защиту (getTotalProtection), к результату прибавляем процент сыгранности:
Цитата Сообщение от KOPOJI Посмотреть сообщение
PHP
1
2
3
4
5
6
7
8
9
10
    public function getTotalAttack()
    {
        $attack = $this->getSpeed() + $this->getShoot() + $this->getTechnic();
        return $attack + ($attack / 100 * $this->getTeamwork());
    }
    public function getTotalProtection()
    {
        $protection = $this->getProtection() + $this->getPhysics() + $this->getPass();
        return $protection + ($protection / 100 * $this->getTeamwork());
    }
1) атакует команда 1: $one->getTotalAttack() - $two->getTotalProtection()
2) атакует команда 2: $two->getTotalAttack() - $one->getTotalProtection()
3) обнуляем результаты (по умолчанию счет 0-0)
4) если общая атака первой команды больше общей защиты второй или "повезло", то генерируем число от 0 до максимального количества голов от первой команды
5) аналогично со второй командой (только наоборот)
Цитата Сообщение от KOPOJI Посмотреть сообщение
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
    public function calculateResult(Team $one, Team $two)
    {
        $attackOne = $one->getTotalAttack() - $two->getTotalProtection();
        $attackTwo = $two->getTotalAttack() - $one->getTotalProtection();
 
        //clear values
        $this->resultOne = $this->resultTwo = 0;
 
        if($attackOne > 0 || $one->getLucky())
            $this->resultOne =  rand(0, $one->getMaxgoals());
        if($attackTwo > 0 || $two->getLucky())
            $this->resultTwo = rand(0, $two->getMaxgoals());
    }
0
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 39
05.12.2016, 11:09  [ТС]
KOPOJI, а можно сделать следующим образом? К1 - Команда 1, К2 - Команда 2.
Допустим по сумме характеристик следующая ситуация:
К1 Атака 456 - К2 защита 402 =Тут разница у К1 в +54, можно ли за каждый + 15 считать 1 гол? То есть 54 = 3-4 гола + поставить процент рандомности чтобы это значение очень редко менялось на 1/2 гола.
К1 Защита 440 - К2 Атака 460 = Тут аналогичная ситуация, у К2 +20 = соответственно + 1, если конечно не "выстрелит рандом", но только всего в пару пукнтов, максимум 2.
Если же защита в + до 20, то поставить 5% что атака забьет один гол, если большое то однозначно 0
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
05.12.2016, 11:10
можно. Только мне влом)
0
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 39
05.12.2016, 12:06  [ТС]
Если будет время, а главное желание, то попробуй пожалуйста. Я пока поищу инфу может методом втыка что-то и у меня получится.

Окончательный алгоритм
К1 Атака 2114 - К2 защита 1985 =Тут разница у К1 в +129, можно ли за каждый + 50 считать 1 гол? То есть 129 = 2 точно, а 3 гол как повезет, в зависимости от процента сколько осталось до 50. + поставить следующий процент, в конечном итого результат может рандомно изменится в 1 гол на 10% в 2 гола на 5%.

К2 Атака 2076 - 2092 К1 Защита 2092= у К2 -16 = соответственно, максимум на что может рассчитывать в этой ситуации атака, так это на 1 гол, если минус атаки больше 20, то это 100% 0 результат, если минус атаки меньше 20, то 5% что К2 забьет 1 гол.

Добавлено через 31 секунду
Помоги с этим и я отстану, пожалуйста. Просто здесь уже алгоритм точнее и интереснее)
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
05.12.2016, 13:00
Лучший ответ Сообщение было отмечено Zloben как решение

Решение

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
    public function calculateResult(Team $one, Team $two)
    {
        $attackOne = $one->getTotalAttack() - $two->getTotalProtection();
        $attackTwo = $two->getTotalAttack() - $one->getTotalProtection();
 
        $staff = 50;
        
        $this->resultOne = (int) floor($attackOne / $staff);
        if($one->getLucky() && $this->resultOne * $staff !== $attackOne)
        {
            $rest = (int) ceil(10 - ($attackOne - $this->resultOne * $staff) * (100 / $staff) / 10);
            $this->resultOne += !mt_rand(0, $rest);
        }
        
        $this->resultTwo = (int) floor($attackTwo / $staff);
        if($two->getLucky() && $this->resultTwo * $staff !== $attackTwo)
        {
            $rest = (int) ceil(10 - ($attackTwo - $this->resultTwo * $staff) * (100 / $staff) / 10);
            $this->resultTwo += !mt_rand(0, $rest);
        }
    }
алгоритм не совсем такой, код не проверял. Дальше сам включай голову и правь как хочешь
1
0 / 0 / 0
Регистрация: 02.12.2016
Сообщений: 39
05.12.2016, 14:20  [ТС]
KOPOJI, Бомба, пушка, огонь!

Спасибо большое за твоё терпение, как получится - отблагодарю!

Добавлено через 2 минуты
Теперь буду пытаться с .db сделать вывод на отдельную страничку, пример есть, так что буду пробовать)
0
05.12.2016, 17:06

Не по теме:

Цитата Сообщение от Zloben Посмотреть сообщение
KOPOJI, Бомба, пушка, огонь!
так меня еще никто не называл :D

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.12.2016, 17:06
Помогаю со студенческими работами здесь

БД футбольных матчей
В MS Access создана БД, в которой хранятся результаты проведенных матчей. Матч проводится путем объявления пар и записи результата. В...

бд футбольных матчей
как в этом месте (которое выделил) сделать так чтобы в &quot;Команду1&quot; и &quot;Команду2&quot; попадали разные команды типо перебор всех возможных...

Результаты футбольных матчей.
Даны два массива из 20 однозначных чисел. В первом из них записано количество мячей, забитых футбольной командой в игре, во втором -...

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

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru