MyWackoSite: СпецкурсPHP/ЗаданияСпецкурса ...

Home Page | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация | Вход:  Пароль:  
Задания по курсу РНР.
1. Написать парсер лога веб-сервера Apache, выдающего статистику за определенный день в форме отчета. Информация должна быть представлена следующая: количество обращений к страницам, количество запросов в час, количество запросов по IP адресам.
Образец лога доступен по адресу http://swsoft.nsu.ru/~fat/access.log.1

2. Написать программу угадывания числа, в которой задаются границы заданного числа и количество попыток. Программа должна отобразить: границы заданного числа, оставшееся число попыток и результат сравнения введенного числа с загаданным: больше, меньше или равно.

3. Реализовать интерфейс к базе данных при помощи класса, выполняющего следующие действия: соединение с базой данных, закрытие соединения, выполнение прямого SQL запроса, получение данных разного вида извлеченных SQL запросом.

4. Реализовать интерфейс к базе данных при помощи класса, который должен являться базовым или инкапсулировать объект некоторого базового класса. Базовый класс содержит набор свойств, заданных определенным образом, и описывающий название таблицы и полей. Данный базовый класс должен уметь генерировать запросы INSERT, SELECT, UPDATE по свойствам таблицы, описанных в классе наследнике.

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

6. Написать 2 версии формы авторизации в систему. Первая демонстрирует возможность и принцип работы SQL-injection, вторая безопасная в плане SQL injection.

7. Написать программу, состоящую из 3х страниц: 1 – авторизация, 2 – изображение и список координат щелчков мышью по изображению, 3 – выход из системы. 2ая страница не должна быть показана неавторизованным пользователям. Информация о координатах щелчков мышью должны храниться в cookie или в сессии. Дополнительно можно реализовать регистрацию пользователей в систему.

8. Написать класс измеряющий производительность той или иной части кода. Например, провести сравнение скорости работы циклов foreach, for, while; обращение к неопределенной переменной и ее использование и проверку на существование переменной и т.п.

9. Написать простейший веб-сервис, обладающий следующей функциональностью:
• Запрос может быть по методу GET или POST
• Запрос должен содержать логин/пароль пользователя в базе
• Возвращаемый результат – XML одного из трех видов: неверный логин/пароль, отсутствие пользователя в базе, информация о пользователе.
• Дополнительно – реализация добавления пользователя в базу.

10. Написать файловый менеджер. Реализовать функции создания/переименования/удаления директорий/файлов, изменений прав доступа, работа с ftp.

11. Написать программу, которая распечатывает текст программы с подсветкой синтаксиса.



 
Файлов нет. [Показать файлы/форму]
Комментарии [Скрыть комментарии/форму]

Пример лога apache для задания 24 может быть найден по адресу http://swsoft.nsu.ru/~fat/access.log.18.gz

-- FatBrother (2006-04-06 15:12:46)