ptest/README.md

103 строки
3.6 KiB
Markdown
Исходник Обычный вид История

2017-01-22 23:47:24 +00:00
PTEST
=====
Задание
-------
###Написать Доску объявлений
Доска объявлений предоставляет возможность пользователям сайта оставлять
сообщения на сайте.
Все данные введенные пользователем сохраняются в БД MySQL, так же в базе данных
сохраняются данные о IP пользователя и его браузере.
Форма добавления записи на доску объявлений должна иметь следующие поля:
* User Name (цифры и буквы латинского алфавита) – обязательное поле
* E-mail (формат email) — обязательное поле
* Homepage (формат url) – необязательное поле
* CAPTCHA (цифры и буквы латинского алфавита) – изображение и обязательное
поле (http://ru.wikipedia.org/wiki/CAPTCHA)
* Text (непосредственно сам текст сообщения, HTML тэги недопустимы) –
обязательное поле
Сообщения должны выводится в виде таблицы, с возможностью сортировки по
следующим полям: User Name, e-mail, и дата добавления (как в порядке убывания,
так и в обратном). Сообщения должны разбиваться на страницы по 25 сообщений на
каждой.
Приветствуется создания простейшего дизайна с использованием CSS.
Развертывание
-------------
2017-06-07 09:34:11 +00:00
Скачать архив <https://mygit.i2g.ru/biv/ptest/archive/master.zip>
2017-01-26 03:45:35 +00:00
Настроить любимый веб-сервер на папку `public`.
Мой конфиг для nginx
```
2017-01-26 03:47:25 +00:00
2017-01-26 03:45:35 +00:00
server {
2017-01-26 03:49:27 +00:00
server_name ptest.i2g.ru;
root /mnt/160/sites/ptest.i2g/public;
location / {
try_files $uri /index.php?$query_string;
}
location ~ ^/index\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(|/.*)$;
include fastcgi_params;
fastcgi_param HTTP_PROXY "";
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_intercept_errors on;
# PHP 5 socket location.
fastcgi_pass unix:/var/run/php5-fpm.sock;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
2017-01-26 03:45:35 +00:00
2017-01-26 03:49:27 +00:00
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
2017-01-26 03:45:35 +00:00
}
```
###MySQL/MariaDB
1. Импортировать `dump.sql` в базу данных.
2. Установить параметры в файле `src/start.php`
### Composer
Чтобы скрипт заработал нужно создать автозарузчик классов при помощи
[Composer](https://getcomposer.org/download/ "Загрузка пакетного менеджера для PHP-библиотек Composer")
2017-01-25 16:07:40 +00:00
```
composer install
```
2017-01-26 03:45:35 +00:00
Впринципе после этого приложение должно заработать.
### По желанию
Для генерации CSS, js и прочей рутины я использую Grunt.
Чтобы его установить нужны следующие команды
2017-01-25 16:07:40 +00:00
```
2017-01-26 03:45:35 +00:00
cd grunt
npm install
cd css
git clone https://github.com/IgorVBelousov/ShortCSS.git
2017-01-25 16:07:40 +00:00
git clone https://mygit.i2g.ru/normalize/
```
2017-01-26 03:45:35 +00:00