close

Вход

Забыли?

вход по аккаунту

Самохин Антон Алексеевич. Разработка информационной системы обмена недвижимости

код для вставки
3
АННОТАЦИЯ
ВКР 64 с., 37 рис., 2 табл., 17 источников, 2 прил.
ИНФОРМАЦИОННАЯ
СИСТЕМА,
НЕДВИЖИМОСТЬ,
ОБМЕН,
ИНФОРМАЦИОННАЯ СИСТЕМА ПОДБОРА НЕДВИЖИМОСТИ НА
ОБМЕН.
Выпускная
квалификационная
работа
посвящена
разработке
информационной системы для подбора объектов на обмен.
В первой главе описывается предметная область, рассматриваются
существующие решения на рынке недвижимости, моделируется процесс
объектов недвижимости.
Во второй главе описывается база данных, разрабатываются алгоритмы
работы системы, разрабатывается логика диалога с пользователем.
В
системы.
третьей
главе
рассматривается
реализация
информационной
4
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
5
1 ОПИСАНИЕ ОБЪЕКТА ИССЛЕДОВАНИЯ
7
1.1 Описание процесса подбора недвижимости
7
1.2 Существующие решения на рынке недвижимости
8
1.3 Моделирование процесса обмена объектов недвижимости посредством
нотации IDEF0
20
1.4 Функциональные требования
25
1.5 Нефункциональные требования
26
1.6 Выбор инструментальных средств для разработки информационной
системы
28
1.7 Описание архитектуры разрабатываемой информационной системы
29
2 РАЗРАБОТКА ИНФОРМАЦИОННОЙ СИСТЕМЫ
31
2.1 Описание базы данных
31
2.2 Алгоритмы работы информационной системы
40
2.3 Разработка логики диалога пользователя
49
3 РЕАЛИЗАЦИЯ ИНФОРМАЦИОННОЙ СИСТЕМЫ
51
ЗАКЛЮЧЕНИЕ
62
СПИСОК ЛИТЕРАТУРЫ
63
Приложение А (обязательное) Код модуля регистрации в веб-приложении 65
Приложение Б (обязательное) Код модуля регистрации объекта
недвижимости на обмен
68
УДОСТОВЕРЯЮЩИЙ ЛИСТ
72
ИНФОРМАЦИОННО-ПОИСКОВАЯ ХАРАКТЕРИСТИКА
73
5
ВВЕДЕНИЕ
На сегодняшний день на рынке недвижимости около 97% всех сделок
проходят с помощью договора
купли – продажи. Поэтому создание
информационной системы с помощью, которой можно будет, подобрать
подходящее жилье имеет огромное значение.
Если в поисковой системе «Яндекс» сделать поиск по ключевому слову
«обмен недвижимостью», то выдаст достаточно большое количество сайтов
по оказанию услуг или помощи в обмене недвижимостью. Аналогичная
ситуация с поисковой системой «Google». При поиске по аналогичной
ключевой фразе, то выдает не меньшее количество сайтов, так или иначе
относящихся к обмену недвижимости.
Исходя из выдачи, можно сделать следующий, весьма понятный и
ожидаемый, вывод, что на обмен недвижимости есть спрос.
Если зайти на сайт www.wordstat.yandex.ru и посмотреть статистику
сколько раз был совершен поиск по поисковой фразе «обмен недвижимости»
и похожих фраз. Статистика на сайте показывает, что поиск было совершен
более семнадцать тысяч раз в месяц, так же сайт подсказал, что поиск по
фразе «квартира обмен» был совершен более восьмидесяти четырех тысяч
раз.
Опираясь на данные выдачи поисковых систем «Яндекс» и «Google»,
можно сделать логичный вывод, что спрос на услуги обмена недвижимости
имеют большой спрос. Так же при поиске в поисковых системах «Яндекс» и
«Google» в выдаче присутствовало большое количество сайтов риэлтерских
агентств, что так же дополнительно подтверждает, сделанный вывод.
В разрабатываемой информационной системе можно будет делать
выборку из трех видов объектов недвижимости:
1. квартиры;
2. дома;
3. комнаты.
6
Так же, что не маловажно, будет возможен подбор разных объектов
недвижимости, то есть обмен квартиры на дом, дома на квартиру, комнату на
квартиру и так далее.
Цель выпускной квалификационной работы – улучшение процесса
поиска объектов недвижимости на обмен с использованием информационной
системы.
Анализ процесса поиска объектов недвижимости на обмен и
моделирование ряда функциональных срезов информационной системы
поиска объектов недвижимости на обмен.
Потребуется решить следующие задачи для достижения поставленной
цели:
1. Проанализировать и выявить слабые и сильные стороны возможных
аналогов разрабатываемой системы.
2. Обосновать необходимость разработки информационной системы
для обмена недвижимостью.
3. Проанализировать
существующие
продукты,
позволяющие
подбирать недвижимость для обмена
4. Смоделировать процессы предметной области.
5. Описать функциональные и нефункциональные требования к
информационной системе.
6. Описать логическую схему базы данных.
7. Обосновать выбор инструментальных средств для разработки
информационной системы.
8. Разработать
архитектуру
разрабатываемой
информационной
системы.
9. Разработать алгоритмы работы информационной системы.
10. Разработать логику диалога пользователя.
11. Реализовать и протестировать информационную систему.
7
1 ОПИСАНИЕ ОБЪЕКТА ИССЛЕДОВАНИЯ
1.1 Описание процесса подбора недвижимости
Существуют разные виды объектов недвижимости:
1. земельные участки;
2. здания;
3. сооружения;
4. помещения;
5. объекты незавершенного строительства;
6. единый недвижимый комплекс;
7. предприятия как единый недвижимый комплекс;
8. предприятия как имущественный комплекс;
9. иные виды.
В зависимости от характера использования виды недвижимости
распределяются на используемые:
1. для жилья (дома, коттеджи, квартиры, дачи);
2. для коммерческой деятельности (отели, офисные здания, магазины и
другие);
3. для производственных целей (склады, фабрики, заводы и тому
подобные);
4. для сельскохозяйственных нужд (фермы, сады, огороды и прочие);
5. для специальных целей (школы, церкви, больницы, ясли-сады и
другие).
В разрабатываемой информационной системе будет реализован
помощи для подбора недвижимости на обмен для жилья, так как жилые
объекты недвижимости наиболее распространены, а именно выборка для
обмена следующих типов:
1. квартирами;
2. домами;
3. комнатами.
8
При использовании информационной системы, соответственно, можно
будет искать различные типы недвижимости, то есть, можно будет сделать
выборку обмена квартиры на дом, или наоборот, комнаты на дом, квартиры
на комнату и так далее.
Основная идея информационной системы, чтобы пользователь в
процессе использования вводил параметры своего объекта недвижимости, а
программа выводит объекты недвижимости тех владельцев, которые
рассматривают обмен по введенным параметрам.
Так же пользователь может ввести параметры своего объекта
недвижимости и параметры объекта недвижимости, на который он хочет
обменять, таким образом,
в выдаче будут объекты недвижимости, на
которые пользователь вводивший данные
готов совершить обмен. Для
создания информационной системы необходимо создать сайт, чтобы любой
человек, нуждающийся в обмене жилья мог зайти на сайт в любой точке
мира
и
посмотреть
все
интересующие
его
варианты
обмена.
На
разрабатываемом сайте будет возможен подбор вида жилья по параметрам,
то есть можно будет сделать выборку по двух комнатным квартирам с
площадью от пятидесяти до шестидесяти пяти квадратных метров, на этаже
начиная от четвертого до седьмого и так далее.
1.2 Существующие решения на рынке недвижимости
В Интернете существует достаточно большое количество сайтов
подобной тематики, в большинстве случаев с неудобным функционалом.
Рассмотрим сайт avito.ru. При входе на сайт в строку поиска вбивается
фраза
«обмен» и происходит выборка всех объектов недвижимости по
выбранным параметрам готовых на продажу или обмен. То есть
пользователю приходиться заходить в каждое объявление, и просматривать
на каких условиях возможен обмен, что очень неудобно и отнимает много
времени. Выборка показана на рисунке 1.
9
В мобильном приложении доски объявлений «Авито», рисунки 2, 3,
раздела обмена недвижимостью нет. Так же как и на сайте возможен поиск
по фразе «обмен на недвижимость», выводит все объявления, в которых
присутствует
достаточно
фраза
обмен
неудобное,
так
на
как
недвижимость,
приходиться
присутствие
больше
рекламы
пролистывать.
Приходиться заходить в каждое объявление и просматривать на что хочет
владелец поменяться и на каких условиях, вывод объявлений показан на
рисунке 4.
На сайте «Моя реклама» существует категории как показано на
рисунке 5. Это гораздо удобнее, чем на сайте «Авито», но также нет четких
критериев отбора, и пользователь может запутаться, так как, например, в
разделе «С большей на меньшую» показаны квартиры, которые меняются с
большей на меньшую, и соответственно этот раздел интересен тем кто хочет
обменять меньшую на большую. И так же как на сайте «Авито» нужно
заходить в каждое объявление и смотреть условия. На рисунке 6 показан
выдача объявлений «Моя реклама».
Сайт «Гдеэтотдом.ру» по функциональности похож на сайт «Авито».
Внешний вид сайта представлен на рисунке 7.
Сайт
«Обмен.ру»
имеет
более
широкий
функционал,
чем
рассмотренные ранее, но имеет один большой недостаток, что данный сайт
работает в пределах Москвы и Московской области. На сайте можно выбрать
диапазон площади интересующей нас квартиры, количество комнат, станцию
метро и город. На рисунке 8 представлен интерфейс сайта «Обмен.ру».
На достаточно известном сайте объявлений «Юла», механизм обмена
жилья отсутствует, там только объявления о продаже недвижимости.
Возможен поиск по фразам «обмен на квартиру», «обмен на дом», «обмен на
комнату», и так далее, поиск по ключевому слову «обменяю» показана
рисунке 9. По принципу работы сайт не очень отличается от сайта «Авито»,
отличие лишь в визуальной части.
10
10
Рисунок 1 – Поисковая выдача на сайте «Авито»
11
Рисунок 2 – Выбор категории в мобильное приложении «Авито»
Рисунок 3 – Выбор подкатегории в мобильном приложении «Авито»
12
Рисунок 4 – Вывод объявлений по поисковой фразе «обмен на
недвижимость» на сайте «Авито»
Рисунок 5 – категории на сайте «Моя реклама»
13
13
Рисунок 6 – Выдача объявлений на сайте «Моя реклама»
14
14
Рисунок 7 – Внешний вид сайта «Гдеэтотдом.ру»
15
15
Рисунок 8 – Интерфейс сайта «Обмен.ру»
16
В мобильном приложении «Юла», как показано на рисунке 11
отсутствует категория обмена недвижимости, возможен только поиск по
ключевым словам, что не дает возможность задавать условия поиска. Поиск в
мобильном приложении «Юла» показан на рисунке 10.
Таблица сравнения представлена в таблице 1.
Проанализировав существующие решения на рынке недвижимости,
можно сделать вывод, что существуют решения с хорошими визуальными
оформлениями
недвижимостью,
есть,
и
то,
что
удовлетворяющего
целостного
решения
требованиям
для
четкого
обмена
поиска,
с
выборкой по определенным параметрам, возможностью выбора конкретного
типа объекта недвижимости, то есть квартиры, дома или комнаты, и
выдающего конкретные результаты, для удобного просмотра и отбора нет. В
рассмотренных решениях, только в информационной системе «Обмен.ру»
возможен поиск по критериям, но есть один существенный недостаток,
информационная система делает выборку только по Москве и Московской
области, так же не очень много критериев для поиска.
В
разрабатываемой
осуществляться
по
информационной
большому
количеству
системе
критериев,
поиск
будет
например
по
квадратным метрам, по этажам, по количеству этажей, по району, поиск по
городам Российской Федерации, так же можно будет ввести критерии
объекта, на который пользователь хочет поменять.
Так же в разрабатываемой информационной системе будут адаптация
под мобильные устройства, что немало важно, так как мобильные устройства
набирают все большую популярность.
17
Рисунок 9 – Поиск по ключевому слову «обменяю» на сайте «Юла»
18
Рисунок 10 – Поиск в мобильном приложении «Юла»
Рисунок 11 – Категории в мобильном приложении «Юла»
19
Таблица 1 – Таблица сравнения аналогов по критериям
1. Авито
Поиск
охватывает всю
Да
территорию
России
Наличие
фильтров
поиска
2.
реклама
Нет
Моя 3.
Гдеэтотдом.ру
Да
4. Обмен.ру 5. Юла
Нет
Да
Нет,
поиск
Да,
осуществляется
сравнение
с
помощью
Нет,
поиск Нет,
поиск Нет,
поиск
возможно
поисковой
осуществляется осуществляется осуществляется
только по строки
для с
помощью с
помощью с
помощью
квадратным
поисковой
поисковой
поисковой
метрам
и
строки
строки
строки
количеству
комнат
Направление
деятельности - Нет
недвижимость
Мобильная
Да
версия сайта
Мобильные
Да
приложения
Нет
Да
Да
Да
Да
Нет
Нет
Нет
Нет
Нет
Да
Да
6. Разрабатываемая
информационная
система
Да
Да, сравнение по
типу
объекта
недвижимости, по
квадратным
метрам,
этажу,
количеству
комнат,
прилегающей
территории
к
частному дому.
Да
Да
В перспективе
19
20
1.3 Моделирование процесса обмена объектов недвижимости
посредством нотации IDEF0
На рисунке 12 показан основной блок «Найти объекты недвижимости
на обмен», в этот блок входят ресурсы, которые называются «Потребность в
новом жилье», это ресурс входящий, так как обмен жилья начинается с
потребности в обмене жилья в процессе он перерабатывается в выходящий
ресурс «Информация о выбранном жилье», так как на выходе собственник
объекта недвижимости получает информацию об объектах недвижимости.
В блок «Найти объекты недвижимости на обмен» входит управляющий
ресурс «Параметры подбираемого объекта», так как выбор определенного
объекта недвижимости осуществляется исходя из его параметров.
Еще в блок «Найти объекты недвижимости на обмен» входят
механизмы «Собственник», «ИС», «Продавец», так как эти механизмы
участвую в переработке входящих ресурсов, например, «Собственник»
выбирает объекты недвижимости, «ИС» участвует в обработке информации,
«Продавец» участвует в переговорах с «Собственником».
Декомпозиция блока показана на рисунке 13, она содержит три блока
«Искать
объекты
недвижимости
на
обмен»,
«Просмотреть
объекты
недвижимости на обмен», «Произвести выбор объекта недвижимости».
В функциональный блок «Искать объекты недвижимости на обмен»,
принимает вход перерабатываемый ресурс «Потребность в новом жилье», так
как это потребность собственника. Так же в блок входит управляющий
ресурс «Параметры подбираемого объекта», потому что при выборе объектов
недвижимости зависит от параметров. И так же входят механизмы «ИС»,
«Собственник».
0
21
21
1
Рисунок 12 – Контекстная диаграмма процесса «Поиск объектов недвижимости на обмен»
2
22
22
2
Рисунок 13 – Детализация процесса «Найти объекты недвижимости на обмен»
2
23
Из функционального блока «Искать объекты недвижимости» выходит
ресурс «Список подходящих ресурсов», так как ресурс «Потребность в новом
жилье» в функциональном блоке «Искать объекты недвижимости на обмен»
перерабатывается в выходящий ресурс «Список подходящих ресурсов».
В функциональный блок «Посмотреть объекты недвижимости» входит
перерабатываемый ресурс «Список подходящих объектов недвижимости»,
так же входят механизмы «Собственник» и «Продавец». На выходе
получается ресурс «Просмотренные объекты недвижимости», так как в
функциональном блоке просматриваются все подходящие объекты.
В функциональный блок «Произвести выбор объекта недвижимости»
входят перерабатываемые ресурсы «Просмотренные объекты недвижимости»
и «Потребность в новом жилье», на выходе получается ресурс «Информация
о выбранном жилье».
На рисунке 14 показана декомпозиция функционального блока «Искать
объекты недвижимости на обмен».
Функциональный блок «Искать объекты недвижимости на обмен»
имеет декомпозицию, в которой есть функциональные блоки «Сформировать
запрос», «Смотреть все объявления», «Выбрать все заинтересовавшие
объекты».
В
функциональный
блок
«Сформировать
запрос»
входит
перерабатываемый ресурс «Потребность в новом жилье», так как это
потребность, которую надо реализовать. Так же управляющий ресурс
«Параметры подбираемого объекта», так как от него зависит формирование
запроса.
На выходе из функционального
«Сформированный запрос».
блока
получается
ресурс
3
24
24
4
Рисунок 14 – Детализация процесса «Искать объекты недвижимости на обмен»
2
25
В функциональный блок «Смотреть все объявления» входит ресурс
«Сформированный запрос», так же входит ресурс управления «Параметры
подбираемого объекта недвижимости». Механизмы «Собственник» и «ИС»
на выходе получается ресурс «Список объектов недвижимости», так как при
просмотре всех объявлений получается список подходящих объектов
недвижимости.
В функциональный блок «Выбрать все заинтересовавшие объекты»
входит
ресурс
«Список
объектов
недвижимости»
на
выходе
перерабатывается в ресурс «Список подходящих объектов недвижимости»,
так как в этом блоке получается список объектов недвижимости, которые
понравились собственнику, так же в функциональный блок входит
управляющий ресурс «Параметры подбираемого объекта недвижимости», в
качестве механизма входит ресурс «Собственник».
1.4 Функциональные требования
Информационная система должна делать выборку по заданным
условиям, то есть пользователь вводит, параметры объекта недвижимости, на
который он хотел бы осуществить обмен, то есть следующие параметры,
площадь объекта в квадратных метрах, всего этажей, далее опционально, для
квартиры, количество комнат, этаж, актуален как для дома, так и для
комнаты,
для
дома
это
площадь,
прилегающего
участка
к
дому.
Соответственно информационная система должна хранить эту информацию и
сохранять.
Информационная
система
должна
создавать
обеспечивать доступ к функционалу, а именно:
1. Создавать заявки.
2. Редактировать заявки.
3. Удалять заявки.
4. Просматривать заявки.
пользователей
и
5
26
1.5 Нефункциональные требования
Требования к применению:
1. Качество пользовательского интерфейса должно быть интуитивно
понятным, чтобы большинство пользователей сразу приступило к работе.
2. Должна быть инструкция по использованию информационной
системы
3. Должна быть служба поддержки пользователей.
Требования к производительности:
1. Страницы должны загружаться через широкополосный доступ от
трех до пяти секунд, чрез мобильную сеть от трех до десяти секунд.
2. Количество запросов, которое должно выдержать информационная
система пять тысяч запросов в час.
3. В таблице ниже показаны виды ресурсов и фундаментальные
ограничения
Виды ресурсов и фундаментальные ограничения
Виды ресурсов и фундаментальные ограничения представлены в
таблице 2.
Требования к реализации:
1. Язык, с помощью которого будет разработана система PHP
2. Система управления базами данных MySQL
3. Так же необходимо написание страниц на HTML5, и каскадных
стилей CSS.
Требования к надежности:
1. Необходимо хранить несколько копий программного обеспечения на
нескольких носителях.
2. Необходимо ежедневно копировать файл базы данных на внешний
носитель.
Требований к интерфейсу нет, так как нет внешних сущностей, с
которыми нужно взаимодействовать.
6
27
Таблица 2 – Виды ресурсов и фундаментальные требования
Вид ресурса
Процессор
Диск(HDD)
Диск(SDD)
Операций в секунду
Пропускная способность
2.0 - 3.5 GHz =>
Не определено
~2,000,000,000 3,500,000,000 ops/sec
~350 IOPs => ~ 350
~ 50 - 120 MB / sec
ops / sec
~ 100,000 - 130,000 IOPs
~ 200 - 6,000 MB /sec
~ 100,000 - 130,000 ops/sec
Сеть
(проводной 100 - 1000 Mbit / sec,
LAN: 100Mbit - 1,000
Enternet)
Minimum TCP Packet ~20 Mbit => 12 - 125 MB/sec
Bytes (160bits) => ~ 600,000
WAN: 2Mbit 20
- 6,000,000 ops/sec
Mbit=> 0.25 - 2.5 MB/sec
Оперативная память
Operational Freq: 166 - 255
~ 8,500 - 17,000 MB /
MHz=> ~
100,000,000
- sec
210,000,000 / sec
Скорость ответа
Не определено
~10 - 20 ms
0.1 ms
LAN ~ 0.1 - 1 ms
WAN ~20 - 300 ms
0.000,010 - 0.000,02 ms
27
7
2
28
1.6 Выбор инструментальных средств для разработки
информационной системы
Для разработки информационной системы будут использованы
следующие инструментальные средства:
1. Стандартизированный
язык
формирования
документов
во
Всемирной паутине- HTML5;
2. Формальный язык описания внешнего вида документа, написанного
с использованием языка разметки- CSS3;
3. Язык программирования PHP;
4. Язык программирования JavaScript;
5. Библиотека для JavaScript JQuery;
6. Система управления базами данных MySQL;
7. Веб-сервер Apache;
8. Веб-интерфейс для администрирования системой управления базами
данных MySQL- PhpMyAdmin;
9. Технология AJAX;
8
10. Текстовый редактор Notepad++.
Все продукты являются свободными, то есть распространяются
бесплатно.
HTML5
-
последняя
версия
языка
гипертекстовой
разметки,
поддерживается большинством современных браузеров.
CSS3 нужен для описания оформления HTML5 страниц, и будет
подключен к странице.
PHP является применяется для разработки веб-приложений, может
подключаться
к
базам
данных,
выполнять
SQL-запросы,
так
же
манипулировать с данными, что нам вполне подходит.
JavaScript- выполняется на компьютере клиента, когда страницы
загружена, может манипулировать данными на HTML5 странице, удалять
элементы, добавлять новые элементы.
29
Система управления базами данных MySQL нам понадобиться для
хранения информации о пользователях, и их объектов недвижимости на
обмен.
Библиотека JQuery для JavaScript необходима для того, чтобы у
пользователя не перезагружалась страница, то есть библиотека может
отправлять данные на сервер и выводить результат ответа сервера, что часто
используется
в
современных
веб-приложениях.
Это
позволит
придерживаться тенденции современных веб-приложений.
Веб-сервер Apache необходим для отдачи, как статических данных, так
и динамических данных, то есть для загрузки файлов, которые уже имеются
на веб-сервере, так и для выполнения
динамического выполнения
программного кода PHP.
PhpMyAdmin понадобиться для просмотров результатов сохранения
данных в базу данных, так и для создания самой базы данных, а так же для
просмотра данных, хранящихся в базе данных.
Notepad++ понадобиться для написания HTML5 страниц, так же для
написания кода на JavaScript, PHP, JQuery, SQL, CSS3 и написания простых
заметок о внесение изменений на сайт, в базу данных, код программ, идей и
так далее.
Технология
AJAX
необходима
для
построения
интерактивного
пользовательского интерфейса веб-приложения. По технологии AJAX обмен
данными происходит в фоновом режиме между браузером пользователя и
веб-сервером.
1.7 Описание архитектуры разрабатываемой информационной
системы
В разрабатываемой информационной системе будет использован
следующий подход, после того, как пользователь включил компьютер,
открыл браузер, он попадет на стартовую статическую страницу, после ввода
данных, происходит обмен данными по технологии AJAX, после получения
9
30
ответа от веб-сервера, с помощью библиотеки JQuery результат, полученный
от веб-сервера будет выведен в веб-приложении в браузере, и пользователь
увидит результат.
В свою очередь, при получении запроса на веб-сервер, веб-сервер
передает на вход PHP-интерпретатора файл программы, PHP-интерпретатор
выполняет
код
программы
на
языке
программирования
PHP,
при
необходимости программа подключается к системе управления базами
данных MySQL, выполняется SQL-запрос или SQL-запросы, если того
требует программа, к базе данных, система управления базами данных
возвращает данные, полученные из базы данных, если они найдены, после
чего программа выполняет преобразования данных в понятный для человека
вид, и отдает результат в веб-приложении, открытое в браузере у
пользователя.
Схематично описать архитектуру разрабатываемой информационной
системы можно представить, как показано ниже на рисунке.
0
Рисунок 15 – Архитектура разрабатываемой информационной системы
31
2 РАЗРАБОТКА ИНФОРМАЦИОННОЙ СИСТЕМЫ
2.1 Описание базы данных
Логическая схема базы данных представлена на рисунке 16.
В базе данных содержаться следующие тринадцати таблиц:
1. Таблица «Фотографии» содержит информацию о расположении
файлов в файловой системе, является ли фотография главной фотографией в
заявке.
2. Таблица «Квартиры» содержит информацию о квартирах, а именно
количество комнат.
3. Таблица «Пользователи» содержит информацию о пользователях, а
именно фамилия имя отчество, телефон пользователя, электронную почту,
пароль, активный пользователь или нет.
4. Таблица
«Объекты»
содержит
информацию
об
объекте
недвижимости, которые есть в собственности у пользователей, в каком
районе находится район, в каком городе, адрес, сколько всего этажей,
площадь, комментарий.
5. Таблица «Дома» содержит информацию о площади участка вокруг
дома, и количестве комнат.
6. Таблица «Города» содержит все города России.
7. Таблица «Критерии подбора» содержит общую характеристику
объекта, на который пользователь хочет поменять свой объект.
8. Таблица «Критерии квартиры» хранит характеристики квартиры, на
которую пользователь хочет поменять свой объект.
9. Таблица «Районы» содержит все районы всех городов.
10. Таблица «Районы на обмен» хранит информацию о том, в каких
районах пользователь готов обменяться.
11. Таблица «Критерии комнаты» хранит характеристики комнаты, на
которую пользователь готов обменяться.
1
32
12. Таблица «Критерии дома» хранит характеристики дом, на который
пользователь готов обменяться.
Ниже описаны связи таблиц:
1. Таблица «Фотографии» имеет идентифицирующую связь многие к
одному с таблицей «Объекты», так как в соответствии первой нормальной
формой у одного объекта может храниться много фотографий, поэтому для
фотографий выделена отдельная таблица.
2. Таблица «Квартиры» имеет связь один к одному с таблицей
«Объекты».
3. Таблица «Пользователи» имеет не идентифицирующие отношение к
таблице «Объекты» один ко многим, потому как в соответствии с первой
нормальной формой в одном поле необходимо содержать атомарное
значение, один пользователь может содержать много объектов.
4. Таблица «Комнаты» имеет отношение к таблице «Объекты» один к
одному.
5. Таблица «Дома» имеет связь один к одному с таблицей «Объекты».
6. Таблица «Критерии подбора» имеет идентифицирующую связь к
таблице «Объекты» многие к одному, в соответствии с первой нормальной
формой, так как запись в таблице «Объекты» может содержать много записей
в таблице «Критерии подбора», так же таблица «Критерии подбора» связана
с таблицей «Районы объекта на обмен» идентифицирующей связью один ко
многим, так как согласно первой нормальной форме поле должно содержать
атомарные значения, так же таблица «Критерии подбора» имеет отношение
один к одному с таблицей «Критерии дома», еще таблица «Критерии
подбора» имеет отношения один к одному с таблицей «Критерии комнаты»,
так же таблица «Критерии подбора» имеет отношения один к одному с
таблицей «Критерии квартиры».
7. Таблица «Районы» имеет не идентифицирующую связь один ко
многим с таблицей «Объекты», согласно первой нормальной формы каждое
2
33
поле должно иметь атомарные значения, так же таблица «Районы» имеет
отношения один ко многим с таблицей «Районы на обмен».
Таблица «Фотографии» содержит следующие поля:
1. Поле «Имя файла», предназначено для хранения расположения
файлов в файловой системе.
2. Поле «id» содержит номер объекта недвижимости.
3. Поле «Путь к файлу» содержит путь расположения файла на
физическом диске.
Таблица «Пользователи» содержит следующие поля:
1. Поле «ФИО» содержит фамилию, имя, отчество пользователя.
2. Поле «Телефон» содержит телефон пользователя.
3. Поле
«Электронная
почта»
содержит
электронную
почту
пользователя.
4. Поле «Пароль» содержит хешированный пароль пользователя,
который он использует при входе на сайт.
5. Поле «id» содержит порядковый номер, поле является ключевым.
6. Поле
«Активный»
содержит
информацию
о
том
активный
пользователь или нет, то есть, прошел ли пользователь подтверждение по
электронной почте или нет.
Таблица «Квартиры» содержит три поля:
1. Поле
«Комнат»,
количество
комнат
объекта
недвижимости
пользователя.
2. Поле «id» является ключевым и связывается с таблицей «Объекты».
3. Поле «Этаж», на каком этаже находиться квартира.
Таблица «Комната» содержит три поля:
1. Поле «id» является ключевым и связывается с таблицей «Объекты».
2. Поле «Этаж» хранит информацию о номере этажа квартиры или
комнаты.
Таблица «Объекты» имеет шесть полей:
1. Поле «id» хранит порядковый номер объекта.
3
34
2. Поле «Адрес» содержит адрес, по которому находиться объект
недвижимости.
3. Поле «Всего этажей» хранит, сколько всего этажей у объекта
недвижимости.
4. Поле «Площадь» содержит информацию, сколько квадратных метров
у объекта недвижимости.
5. Поле «Активное» содержит информацию показывать ли объявление
в выдаче или нет.
6. Поле «Тип дома» содержит информацию о типе дома, например,
панельный, кирпичный и так далее.
7. Поле «Дата закрытия» содержит дату закрытия объявления.
8. Поле «id Пользователя» содержит порядковый номер пользователя,
поле связано с таблицей «Пользователи».
9. Поле «id Района» содержит порядковый номер района, поле связано
с таблицей «Районы».
Таблица «Дома» содержит три поля:
1. Поле «id» содержит порядковый номер, поле связано с таблицей
«Объекты».
2. Поле «Площадь участка» хранит площадь участка вокруг дома.
3. Поле «Количество комнат» содержит количество комнат в доме.
Таблица «Город» хранит два поля:
1. Поле «id» содержит порядковый номер города.
2. Поле «Название города» содержит имя города.
Таблица «Критерии подбора» содержит восемь полей:
1. Поле «id» хранит порядковый номер критериев подбора на тот
объект недвижимости, который бы хотел получить взамен пользователь.
2. Поле «id Объекта» порядковый номер, который ссылается на
таблицу «Объекты».
3. Поле «Площадь от» хранит площадь объекта недвижимости, то есть
от скольких квадратных метров интересует обмен.
4
35
4. Поле «Площадь до» хранит до скольких квадратных метров нужен
объект недвижимости.
5. Поле «Этажей от» хранит от скольких всего этажей в объекте
недвижимости хочет пользователь.
6. Поле «Этажей до» хранит до скольких всего этажей в объекте
недвижимости хочет пользователь.
7. Поле «Тип дома» хранит информацию, на какой тип дома
пользователь хотел бы поменять.
8. Поле «Доплата» хранит информацию, о том какую доплату при
обмене объекта недвижимости хотел бы получить пользователь.
Таблица «Районы» содержит три поля:
1. Поле «id» порядковый номер района, поле является ключевым.
2. Поле «id Города» порядковый номер города, поле связано с таблицей
«Город»
3. Поле «Название района» хранит название района.
Таблица «Районы на обмен» содержит три поля:
1. Поле «id Объекта» содержит порядковый номер на объекта на
который пользователь готов поменять.
2. Поле «id Района» хранит порядковый номер района, поле ссылается
на таблицу «Районы».
3. Поле «id Критерии подбора» хранит порядковый номер критериев
подбора объектов недвижимости.
Таблица «Критерии дома» содержит шесть полей:
4. Поле «id» хранит порядковый номер критериев подбора объектов
недвижимости.
5. Поле «id Объекта» хранит порядковый номер объекта недвижимости.
6. Поле «Площадь участка от» содержит информацию от скольких
квадратных метров участка возле дома, пользователь готов поменяться.
7. Поле «Площадь участка до» содержит значение до скольких
квадратных метров участка возле дома, пользователь готов поменяться.
5
36
8. Поле «Комнат от» содержит информацию от скольких комнат,
пользователь готов меняться.
9. Поле «Комнат до» содержит информацию до скольких комнат,
пользователь готов к обмену.
Таблица «Критерии комнаты» содержит шесть полей:
1. Поле «id» содержит порядковый номер объекта на обмен, поле
связано с таблицей «Критерии подбора».
2. Поле
«id
Объекта»
содержит
порядковый
номер
объекта
недвижимости
3. Поле «Этаж от» содержит номер этажа, от которого пользователь
готов на обмен.
4. Поле «Этаж до» содержит номер этажа, до которого пользователь
готов на обмен.
5. Поле «Не первый» принимает значение истины, если пользователь
не хочет меняться на объект, который находиться на первом этаже.
6. Поле
«Не
последний»
принимает
значение
истины,
если
пользователь не хочет меняться на объект, который находиться на последнем
этаже.
Таблица «Критерии квартиры» содержит восемь полей;
1. Поле «id» содержит порядковый номер объекта, поле ссылается на
таблицу «Критерии подбора».
2. Поле «id Объекта» содержит порядковый номер объекта, поле
ссылается на таблицу «Объекты».
3. Поле «Комнат от» содержит от какого количества комнат
пользователь готов меняться.
4. Поле «Комнат до» содержит до какого количества комнат
пользователь готов поменяться.
5. Поле «Не первый» принимает значение истины, если пользователь
не хочет меняться на объект, который находиться на первом этаже.
6
37
6. Поле
«Не
последний»
принимает
значение
истины,
если
пользователь не хочет меняться на объект, который находиться на последнем
этаже.
7. Поле «Этаж от» содержит номер этажа, от которого пользователь
готов обменяться.
8. Поле «Этаж до» содержит номер этажа, до которого пользователь
готов меняться.
Физическая модель представлена на рисунке, поля физической модели,
на рисунке 17 соответствуют полям логической модели на рисунке 16.
7
38
38
3
8
Рисунок 16 – Логическая схема базы данных
39
39
3
9
Рисунок 17 – Физическая модель базы данных
40
2.2 Алгоритмы работы информационной системы
Рассмотрим алгоритм работы
модуля
подключения к системе
управления базами данных, алгоритм представлен на рисунке 18. При
запуске модуля, сначала происходит присваивание данных о сервере базы
данных, то есть переменным присваивается, имя пользователя, адрес, по
которому находиться сервер управления базами данных, пароль, название
базы данных, при успешном подключении к системе управления базами
данных, модуль завершает работу, если подключение к серверу с системой
управления базами данных неудачное, то выводиться сообщение о том, что
подключение не успешное, после чего модуль завершает работу программы.
0
Рисунок 18 – Подключение к системе управления базами данных
41
Рассмотрим
алгоритм
работы
функции
выборки
объектов
недвижимости обмена на квартиру из базы данных, алгоритм представлен на
рисунке. После того как запускается функция происходит фильтрация и
присваивание данных, которые прислал пользователь, то есть присваиваются
переменные города, района, в котором находиться объект недвижимости, а
так же площадь квартиры, количество комнат, этаж, на котором находиться
квартира, сколько всего этажей в доме. Затем происходит формирование
запроса к базе данных. Потом в условие проверяется, ввел ли пользователь,
тот объект недвижимости, на который он хочет поменять, если пользователь
ввел данные объекта, на который он хочет поменять, то происходит вызов
функции с обменом на определенный объект недвижимости, затем модуль
завершает свою работу. В случае если пользователь не ввел данные объекта
недвижимости, на который он хочет обменять, то происходит выборка
квартир, готовых обменяться на квартиру и квартира пользователя
удовлетворяет параметрам, введенных при создании объявления. Далее в
условие проверяется, пустая ли выборка или нет, если выборка пустая, то
происходит вывод сообщения, что квартир на обмен нет, иначе происходит
вызов функции рисующую таблицу, для отображения в веб-приложении
пользователя. После этого происходит формирование запроса к базе данных
для выборки домов, которые могут обменяться на квартиру, затем опять идет
условие, ввел ли пользователь параметры объекта, на который пользователь
хочет понять, если ввел, то вызывается функция с обменом на определенный
объект недвижимости, затем модуль завершает свою работу, иначе если
пользователь не ввел параметры объекта недвижимости, на который он хочет
поменять, то происходит выборка записей домой собственники, которых
готовы обменяться на квартиру, затем идет проверка условия, есть ли записи
в выборке, если нету, то выводиться сообщение, которое информирует
пользователя, что домов, меняющихся на квартиру, не найдены. После этого
формируется запрос на выборку комнат владельцы, которых готовы
обменяться на квартиру. Затем проверяется условие, ввел ли пользователь
1
42
параметры объекта, на который он хочет поменять, если ввел, то вызывается
функция с обменом на определенный объект недвижимости, затем модуль
завершает свою работу, иначе если пользователь не ввел параметры объекта
недвижимости, на который он хочет поменять, то происходит выборка
комнат, владельцы, которых готовы совершить обмен на квартиру. Затем
проверяется условие, пуста ли выборка, если выборка пуста, то выводиться
оповещение пользователю, о том, что комнат владельцы, которых готовы
обменять по параметрам вашей квартиры нет, иначе происходит вызов
функции, которая рисует таблицу с найденными объектами, после чего
модуль завершает работу. Блок-схема алгоритма представлена на рисунке 19.
Рассмотрим алгоритм работы функции вывода таблицы с результатами.
После того как функция начала свою работу, происходит вывод шапки
таблицы. Затем начинает свою работу цикл, в котором происходит проход
всех строк, так же в этом цикле запускается еще один цикл, в котором
происходит обход всех полей одной записи, и в котором проверяется условие
на то, что является ли поле, полем с фотографией, если условие срабатывает
в истину, то вызывается функция вывода фотографий на страницу. После
обхода все строк выборки и всех ячеек каждой выборки и вывода
фотографий,
модуль
завершает
свою
работу.
Блок-схема
модуля
представлена на рисунке 20.
Рассмотрим алгоритм работы функции вывода фотографий, после
вызова функции выводиться открывающий тег ячейки таблицы. Блок-схема
функции показана на рисунке 21.
2
43
3
Рисунок 19 – Алгоритм работы функции выборки объектов недвижимости
обмена на квартиру из базы данных
44
4
Рисунок 19, лист 2
45
5
Рисунок 20 – Модуль вывода таблицы с результатами выборки
46
6
Рисунок 21 – Блок-схема функции вывода фотографий
Затем идет формирование запроса к базе данных, для выборки
фотографий. После формирования запроса, для вывода фотографий идет
выполнение запроса, затем идет условие, пуста ли выборка, если выборка
47
пустая, то есть, фотографий нет, то выводиться закрывающий тег ячейки
таблицы, после чего функция вывода фотографий завершает свою работу,
если выборка не пустая, то в цикле происходит вывод фотографий с
помощью тега, указывается путь к фотографиям. Затем после завершения
работы цикла выводиться закрывающий тег ячейки таблицы и функция
завершает свою работу.
Рассмотрим работу модуля обмена без выбора на что менять. После
начала работы модуля идет проверка условия, выбрал ли пользователь, свой
тип недвижимости, если не выбрал, то выводиться сообщение, о том, что
пользователь не выбрал свой тип объекта недвижимости, после чего модуль
завершает свою работу, если пользователь выбрал свой тип недвижимости,
то потом идет проверка, выбрал ли пользователь квартиру, если условие
выполняется, то происходит вызов функции с обменом на квартиру, после
чего модуль завершает свою работу, если условие не выполняется, то
происходит выполнение следующей условной конструкции на проверку,
выбрал ли пользователь дом, то происходит вызов функции обмена на дом,
после выполнения функции модуль завершает свою работу, иначе
сравнивается выбрал ли пользователь комнату, и модуль вызывает функцию
обмен на комнату, после завершения работы модуль завершает свою работу,
иначе выводиться сообщение о том, что пользователь не выбрал свой тип
объекта недвижимости. Блок-схема работы модуля обмена без выбора, на
какой тип недвижимости менять показана на рисунке 22.
7
48
8
Рисунок 22 – Блок-схема модуля обмена без выбора, на какой тип
недвижимости менять
49
Рисунок 22, лист 2
2.3 Разработка логики диалога пользователя
После входа на сайт, пользователь попадает на главную страницу
сайта, на главной странице сайта он может сделать выборку объектов
недвижимости на обмен, так же он может зарегистрироваться, или войти в
учетную запись, так же он может оставить объявление на обмен. Так же он
может перейти на страницу личного кабинета, где может изменить
персональные данные, просмотреть активные заявки, изменить заявку, или
удалить заявку, вернуться на главную страницу сайта, так же создать новое
объявление.
Исходя из вышесказанного можно нарисовать схему логики диалога с
пользователем при работе с веб-приложением, получившееся схема
представлена на рисунке 23.
9
50
Рисунок 23 – Логика диалога с пользователем при работе с веб-приложением
0
51
3 РЕАЛИЗАЦИЯ ИНФОРМАЦИОННОЙ СИСТЕМЫ
После загрузки веб-приложения в браузере открывается страница,
имеющая внешний вид представленный на рисунке 24.
Рисунок 24 – Внешний вид веб-приложения после открытия
Мобильная
версия
страницы
веб-приложения,
показанная
на
рисунке24, показана на рисунке 25.
1
Рисунок 25 – Внешний вид мобильного веб-приложения после
открытия
52
Затем пользователь может войти в аккаунт, или если он уже
авторизовался в веб-приложении, и сохранились временные данные,
сохраняемые веб-приложением после авторизации. Если пользователь
авторизовался, то страница принимает вид, показанный на рисунке 26.
Рисунок 26 – Внешний вид веб-приложения после открытия и
авторизации
Мобильная версия страницы веб-приложения, показанная на рисунке
26, показана на рисунке 27.
Рисунок 27 – Внешний вид мобильного веб-приложения после
авторизации
2
53
После авторизации, если пользователь захотел авторизоваться, или
после входа в веб-приложении, пользователь может попробовать поиск по
имеющимся объявлениям, то пользователь должен нажать на область
«Посмотреть варианты», после нажатия откроется форма, показанная на
рисунке 28, в которой в выпадающем списке «Выберите ваш тип
недвижимости» нужно выбрать тип недвижимости собственника объекта
недвижимости. На выбор доступно три типа недвижимости: квартира, дом,
комната. Так же можно выбрать тот тип недвижимости, с помощью
выпадающего списка «Выберите тип недвижимости, на который хотите
обменять», на который пользователь хочет обменять, на выбор так же
доступно три типа недвижимости: квартира, дом, комната. После выбора
откроется параметры для ввода. Например, если в обоих выпадающих
списках выбрать тип недвижимости, появятся поля для ввода параметров для
поиска объявлений обмена квартиры на квартиру, показанные на рисунке 29,
интерфейс ввода параметров для мобильных устройств показан на рисунке
30.
3
Рисунок 28 – Форма выбора недвижимости собственника
54
54
5
4
Рисунок 29 – Параметры поиска объявлений обмена квартира на квартиру
55
5
Рисунок 30 – Параметры поиска объявлений обмена квартира на квартиру на
мобильном устройстве
Например, введем параметры квартиры, без указания, на какой тип
объекта недвижимости хотим совершить обмен, результат выборки показан
на рисунках 31, 32, 33.
Пример выборки на мобильных устройствах показан на рисунках 34,
35.
56
56
5
6
Рисунок 31 – Пример выборки объектов недвижимости владельцы, которых готовы обменяться на квартиру
57
57
5
7
Рисунок 32 – Продолжение примера выборки объектов недвижимости владельцы, которых готовы обменяться на
квартиру
58
58
5
8
Рисунок 33 – Продолжение примера выборки объектов недвижимости владельцы, которых готовы обменяться на
квартиру
59
9
Рисунок 34 – Примера выборки объектов недвижимости владельцы, которых
готовы обменяться на квартиру, на мобильном устройстве
60
0
Рисунок 35 – Продолжение примера выборки объектов недвижимости
владельцы, которых готовы обменяться на квартиру, на мобильном
устройстве
При просмотре объявлений фотографии достаточно маленького
размера, поэтому в веб-приложении можно увеличить фотографии, при клике
фотография открывается в модальном окне, так же можно листать кликая
левой кнопкой мыши для пролистывания вправо и влево в правой или левой
части фотографии соответственно. Пример модального окна показан на
рисунках 36, 37, для больших мониторов и мобильных устройств
соответственно.
61
Рисунок 36 – Открытие фотографии в модальном окне на большом экране
1
Рисунок 37 – Открытие фотографии в модальном окне на мобильном
устройстве.
62
ЗАКЛЮЧЕНИЕ
В ходе выпускной квалификационной работы были решены следующие
задачи:
1. Проанализировать возможные аналоги разрабатываемой системы, а
так же выявить слабые и сильные стороны систем.
2. Обосновать необходимость разработки информационной системы
для обмена недвижимостью.
3. Проанализировать
существующие
продукты,
позволяющие
подбирать недвижимость для обмена
4. Смоделировать процессы предметной области.
5. Описать функциональные и нефункциональные требования к
информационной системе.
6. Описать логическую схему базы данных.
7. Обосновать выбор инструментальных средств для разработки
информационной системы.
8. Описать архитектуру разрабатываемой информационной системы.
9. Разработать алгоритмы работы информационной системы.
10. Разработать логику диалога пользователя.
11. Реализовать информационную систему.
Исходя из этого, цель выпускной квалификационной работы была
достигнута.
2
63
СПИСОК ЛИТЕРАТУРЫ
1. Карпова Т.С. Базы данных: модели, разработка, реализация / Т.С.
Карпова. – СПб.: Питер, 2001. – 304 с. – ISBN 5-272-00278-4.
2. Конгаловский М.Р. Энциклопедия технологий баз данных. – М.:
Финансы и статистика, 2002. – 800 с.: ил. ISBN 5-279-02276-4.
3. Корнеев
В.В.
Базы
данных.
Интеллектуальная
обработка
информации / В.В. Корнеев, А.Ф. Гареев, С.В. Васютин, В.В. Райх. – М.:
Издатель Молгачева С.В., Издательство Нолидж, 2001, - 496 с.: ил. ISBN 589251-100-6.
4. Марков А.С. Базы данных. Введение в теорию и методологию:
учебник / А.С. Марков, К.Ю. Лисовкий. – М.: Финансы и статистика, 2004. –
512 с. – ISBN 5-279-02298-5.
5. Петров В.Н. Информационные системы / В.Н. Петров. – СПб.:
Питер, 2002.– 688 с. – ISBN 5-318-00561-6.
6. Репин, В. В. Бизнес-процессы: регламентация и управление/ В. В.
Репин. – М.: ИНФРА, 2004.
7. Черемных, С. В. Структурный анализ систем. IDEF-технологии/ С. В.
Черемных, И. О. Семенов. – М.: Финансы и статистика, 2002.
8. Люк Веллинг, Лора Томсон. Разработка Web – приложений с
помощью РНР и MySQL. Вильямс, 2005
9. Джон Когг Золл. РНР 5. Полное руководство. Диалектика, 2006
10. Викрам Васвани. Полный справочник по MySQL. Москва, 2006
11. Мазупкевич А. РНР. Настольная книга программиста. Новое
издание,2003
12. Котеров, Д. PHP 5 2-е издание / А. Костарев - СПб, 2011г. - 1200стр.
13. Кузнецов, М. Самоучитель PHP 5/6 / И. Симдянов М. Кузнецов,
2011г. - 642стр.
14. Кузнецов, М. PHP на примерах / И. Симдянов М. Кузнецов, 2011г. 400стр.
3
64
15. Климов, А. JavaScript на примерах / А. Климов, 2009г. - 333стр.
16. Мишель, Е. Изучаем PHP и MySQL / Е. Дэвис и Джон А. Филлипс,
2008г. - 448стр.
17. Хоган, Б. HTML5 и CSS3: Веб-разработка по стандартам нового
поколения/Б.Хоган,2012г.-282стр.
4
65
Приложение А
(обязательное)
Код модуля регистрации в веб-приложении
require_once conection_to_db.php;
$name = htmlentities($_POST['name']);
$phone = htmlentities($_POST['phone']);
$email = htmlentities($_POST['email']);
$password = htmlentities($_POST['password']);
$confirm_password = htmlentities($_POST['confirm_password']);
if (strlen($password) > 5){
$bool_str_len_password = true;
$bool_confirm_password = true;
5
if ($password !== $confirm_password){
echo "<p>Пароль и подтверждение пароля должны совпадать</p>";
exit();
} else {
$bool_confirm_password = true;
}
} else {
echo "<p>Длина пароля должна быть минимум 6 символов</p>";
exit();
}
if (strlen($name) > 0){
$bool_str_len_name = true;
66
} else {
echo "<p>Поле имени должно быть заполнено</p>";
exit();
}
if (strlen($phone) > 0){
$bool_str_len_phone = true;
} else {
echo "<p>Телефон должно быть заполнено</p>";
exit();
}
if (strlen($email) > 0){
$bool_str_len_email = true;
} else {
echo "<p>Электронной почты должно быть заполнено</p>";
6
exit();
}
if
($bool_str_len_password
AND
$bool_confirm_password
AND
$bool_str_len_name AND $bool_str_len_phone AND $bool_str_len_email){
$result = mysqli_query($link, "SELECT * FROM users WHERE email =
'".$email."'");
$fetch_email = mysqli_fetch_all($result);
if ($fetch_email === null){
$password
=
base64_encode(pack('H*',sha1(utf8_encode($password))));
$result_insert_user = mysqli_query($link, "INSERT INTO users(name,
phone,
password,
VALUES('".$name."','".$phone."','".$password."','".$email."')");
email)
67
echo
"<p>Регистрация
прошла
успешно,
спасибо
за
регистрацию</p>";
} else {
echo "<p>Пользователь с таким электронным адресом уже
зарегестрирован. <a href='/recovery.html'>Восстановить пароль</a> </p>";
}
}
7
68
Приложение Б
(обязательное)
Код модуля регистрации объекта недвижимости на обмен
<?php
require_once connecttion_to_db.php;
require_once functions.php;
if ($_SESSION['user_id']) {
$data_post = post_htmlentites($_POST);
$query_insert = insert_object_user($data_post);
if ($query_insert) {
$id_object_query = mysqli_query($link, "SELECT id FROM objects
WHERE user_id=" . $fetch_users[0][2] . " ORDER BY id DESC");
if ($id_object_query) {
8
$id_object = mysqli_fetch_all($id_object_query);
if (htmlentities($_POST['object']) == 1) {
$result_query_insert_kvartira
=
insert_apartament($data_post,$id_object[0][0]);
$flag_insert_obj = false;
if ($result_query_insert_kvartira) {
$flag_insert_obj = true;
} else {
$flag_insert_obj = false;
}
} elseif (htmlentities($_POST['object']) == 2) {
$result_query_insert_dom
insert_house($data_post,$id_object[0][0]);
if ($result_query_insert_dom) {
=
69
$flag_insert_obj = true;
} else {
$flag_insert_obj = false;
}
} elseif (htmlentities($_POST['object'])) {
$result_query_insert_komnanta
=
insert_room($data_post,$id_object[0][0]);
if ($result_query_insert_komnanta) {
$flag_insert_obj = true;
} else {
$flag_insert_obj = false;
}
}
if ($flag_insert_obj) {
$flag_insert_obj_exchange_aportaments = true;
$flag_insert_obj_exchange_house = true;
9
$flag_insert_obj_exchange_room = true;
if
(isset($_POST['object_men1'])
AND
htmlentities($_POST['object_men1']) == 1) {
$result_query_insert_obmen_kv
=
insert_exchange_apartment($data_post,$id_object[0][0]);
if ($result_query_insert_obmen_kv) {
$flag_insert_obj_exchange_aportaments = true;
} else {
$flag_insert_obj_exchange_aportaments = false;
}
}
if
(isset($_POST['object_men2'])
htmlentities($_POST['object_men2']) == 2) {
AND
70
$result_query_insert_obmen_dom
=
insert_exchange_house($data_post,$id_object[0][0]);
if ($result_query_insert_obmen_dom) {
$flag_insert_obj_exchange_house = true;
} else {
$flag_insert_obj_exchange_house = false;
}
}
if
(isset($_POST['object_men3'])
AND
htmlentities($_POST['object_men3']) == 3) {
$result_query_insert_obmen_komnata
=
insert_exchange_room($data_post,$id_object[0][0]);
if ($result_query_insert_obmen_komnata) {
$flag_insert_obj_exchange_room = true;
} else {
$flag_insert_obj_exchange_room = false;
0
}
}
if
($flag_insert_obj_exchange_aportaments
AND
$flag_insert_obj_exchange_house AND $flag_insert_obj_exchange_room) {
foreach ($_POST['rajon_men'] as $locality) {
$result_query_insert_exchange_locality
mysqli_query($link,
"INSERT
INTO
exchange_locality_object(object_id,
locality_id) VALUES (" . $id_object[0][0] . "," . htmlentities($locality) . ")");
if (!$result_query_insert_exchange_locality) {
echo "<p>Ошибка добавления районов</p>";
exit();
}
}
} else {
=
71
echo "<p>Ошибка добавления объекта на обмен, возможно
ввели неверные данные</p>";
}
}else {
echo "<p>Ошибка добавления Вашего объекта, возможно
ввели неверные данные</p>";
}
}
} else {
echo "<p>Ошибка добавления Ваш его объекта, возможно ввели
неверные данные</p>";
}
}
1
ИНФОРМАЦИОННО-ПОИСКОВАЯ ХАРАКТЕРИСТИКА
ДОКУМЕНТА НА ЭЛЕКТРОННОМ НОСИТЕЛЕ
Наименование
группы атрибутов
атрибута
1. Описание
Обозначение документа
документа
(идентификатор(ы)
файла(ов))
Наименование документа
2. Даты и время
3. Создатели
4. Внешние
ссылки
5. Защита
6. Характеристики
содержания
Характеристики документа
на электронном носителе
\Плакаты\Презентация.ppt
Демонстрационные плакаты
к выпускной
квалификационной работе
Класс документа
ЕСКД
Вид документа
Оригинал документа на
электронном носителе
Аннотация
Демонстрационный
материал, отображающий
основные этапы выполнения
выпускной
квалификационной работы
Использование документа Операционная система
Windows 7, Microsoft
PowerPoint 2010
Дата и время
13.06.2018
копирования документа
Дата создания документа 29.05.2018
Дата утверждения
06.06.2018
документа
Автор
Самохин А.А.
Изготовитель
Самохин А.А.
Ссылки на другие
Удостоверяющий лист
документы
№ 120559/п
Санкционирование
ОГУ имени И.С. Тургенева
Классификация защиты
По законодательству РФ
Объем информации
78336 Б
документа
7. Структура
документа(ов)
Наименование плаката
(слайда) №1
Наименование плаката
(слайда) №2
Наименование плаката
(слайда) №3
Наименование плаката
(слайда) №4
Наименование плаката
(слайда) №5
Наименование плаката
(слайда) №6
Наименование плаката
(слайда) №7
Наименование плаката
(слайда) №8
Наименование плаката
(слайда) №9
Титульный лист
Цели и задачи исследования
Обзор существующих
решений на рынке
Сравнение аналогов по
критериям
Описание бизнес-процессов,
происходящих при поиске
объектов недвижимости на
обмен
Схема базы данных на
логическом уровне
Транзитивная сеть
Блок-схема алгоритма поиска
объектов недвижимости на
обмен
Экранные формы
функционирования
информационной системы
1/--страниц
Пожаловаться на содержимое документа