Задачи по PHP. Разные задачи

Разные задачи по PHP

php

перейти к содержанию задачника

  1. Интернет-казино. Пользователь (игрок) начинает игру с суммой в 10000 $. С такой же суммой начинает игру казино. Игрок делает ставку (100<=n<=1000) и загадывает число в промежутке от 1 до 100. Скрипт «вращает рулетку» – генерирует случайное число в промежутке от 1 до 100. Если разница между числом игрока и случайным числом меньше либо равна 10, то игрок получает сумму, равную удвоенной ставке. Если разница больше 10, но меньше либо равна 20, то игрок получает сумму, равную ставке. Во всех остальных случаях игрок проигрывает сумму, равную ставке. Игра продолжается до тех пор, пока у игрока или казино не закончатся деньги.Вся игра происходит в пределах одной страницы. На странице должны быть предусмотрены поля ввода ставки и числа, кнопка «вращения рулетки». Также должны отображаться текущие суммы игрока и казино. После нажатия кнопки на страницу выводится случайное число и сообщение о проигрыше или выигрыше игрока, либо сообщение о некорректном вводе числа или ставки.
  2. Генерация изображений
    • Имеем 5 оригинальных jpg-картинок произвольного размера, находящихся в папке gallery.
    • Имеем список допустимых размеров картинок, которые могут быть сгенерированы из оригинала. Каждому размеру присвоен буквенный код:
      "big" - 800 * 600
      "med" - 600 * 400
      "min" - 300 * 200
      "mic" - 101 * 101
    • В списке размеров указаны максимально возможные значения высоты и ширины, при масштабировании пропорции изображения должны сохраняться.
    • Скрипт(generator.php) принимает на вход 2 GET параметра: название картинки(name) и нужный размер(size).
    • В результате срабатывания скрипта должна выдаваться jpg картинка указанного разрешения, минимального размера и максимально возможного качества.
    • Сгенерированное изображение сохраняется в папке cache. При наличии его в этой папке повторной генерации не производится.

    На демонстрационной странице, с использованием скрипта-генератора:

    • плиткой выведены изображения минимального размера
    • при клике на каждое изображение открывается галерея(любая на JQuery), в которой можно увидеть данное изображение в каждом из указанных в списке размеров
  3.  Выполните задание, описанное в статье http://habrahabr.ru/company/innopolis_university/blog/272235/
  4. Выберите какой-нибудь форум. Выведите список всех пользователей, которые участвовали в последней теме какого-нибудь раздела. Список должен быть в алфавитном порядке и состоящим из ссылок на профили пользователей.
  5. Выведите список тем форума cyberforum.ru за последний месяц, которые в названии содержат слово 'алгоритм'.
  6. Пользователь загружает картинку на сервер. Обработать картинку следующим образом: обрезать до размеров 100px х 100px, при этом пустые области должны быть обрезаны максимально, чтобы сохранить область собственно рисунка. Далее добавить зеркальное отображение по горизонтали нижней полосы картинки 100px x 25 px. Добавить проверку, является ли загруженный файл изображением.
  7. Удалить в заданной директории все пустые папки (в том числе и вложенные).
  8. Написать скрипт загрузки изображения пользователя с заданным именем изображения. Изображение сохраняется в каталог, структура которого динамически формируется следующим образом: изображения распределяются по папкам по алфавиту, причем в одной папке не может быть более 20 изображений. Если папка заполнена и появляется новое изображение для этой папки, то папки пересоздаются с более узким диапазон названий. Например, есть две папки A-M и M-Z. Если в первой папке уже 20 изображений, то при появлении изображения с именем aaa.png, то должны появится три папки A-H, I-P,  Q-Z, в которые должны перераспределится все изображения (если в папке получится при этом меньше 20 изображений, иначе диапазон следует уменьшить). При загрузке одинаковых изображений копии не сохранять.
  9. Определить, содержит ли загружаемое пользователем изображение лицо. Если содержит, то выделить его прямоугольной рамкой заметного цвета.
  10. Дана база покупок пользователей (id пользователя, id покупки, дата покупки, стоимость). Необходимо сформировать отчет по этим данным. А именно: а) выделить группы пользователей, которые покупают постоянно, сезонно, редко; б) группы пользователей по стоимости покупок (3 группы); в) группы товаров по периоду покупок (сезонные, постоянные, редкие). В отчете должен быть раздел с рекомендациям как улучшить продажи и прогноз на ближайший месяц/год по объемам продаж и прибыли. Можно дополнить известные данные для более точного прогноза.
  11. Поиск в каталоге звуковых (mp3 и не только) файлов по метаданным (тегам): названию, исполнителю, альбому, году, комментарию, жанру и так далее.
  12. Разработка SAX-парсера XML-файлов
  13. Разработка генератора XML-файлов валидатора XML-файлов.
  14. Разработка API-клиента Twitter. Получение информации о пользователе, получение списка твитов, получение списка подписчиков, поиск по твитам, добавление нового твита.
  15. Разработка API-клиента VK. Получение информации о пользовате, группах, друзьях, статусе, изменение статуса, отправка сообщения на стену.
  16. Разработка API-клиента Facebook. Получение информации о пользователе, статусе, загрузка личных сообщений, сообщений со стены, изменение статуса, добавление сообщения на стену.