**Свой сайт знакомств #7: форма с данными пользователя PHP, HTML, Bootstrap — Transcript & Summary | SozAI**
Source: https://sozai.app/transcript/dating-site-user-data-form-php-html-bootstrap/

Разработка формы с личными данными пользователя для сайта знакомств на PHP, HTML и Bootstrap.

## Key Takeaways

- Форма личных данных важна для фильтрации пользователей в сайте знакомств.
- Bootstrap упрощает создание адаптивных и удобных форм.
- Обработка и проверка данных на стороне сервера необходимы для корректной работы.
- Навигация между страницами реализуется через ссылки и скрипты PHP.
- Пошаговая разработка помогает лучше понять процесс создания веб-приложения.

## What the video covers

- Выпуск посвящён созданию формы для заполнения личных данных пользователя в дейтинг-сервисе.
- Рассматривается процесс авторизации и получение идентификатора пользователя из базы данных.
- Обсуждается создание навигационного меню для переключения между страницами сайта.
- Использование Bootstrap для оформления контейнеров и элементов формы.
- Добавление различных полей формы: возраст, пол, наличие детей, образование, религиозные убеждения и другие.
- Применение элементов select и input для удобного ввода и выбора данных.
- Проверка и обработка данных перед отправкой в базу данных.
- Обсуждаются стили и отступы для улучшения внешнего вида формы.
- Планируется реализация фильтрации пользователей на основе введённых данных.
- Видео содержит живую разработку с объяснениями и демонстрацией кода.

## Chapters

1. 00:00 Введение и авторизация пользователя
2. 05:05 Создание и размещение элементов Select для фильтров
3. 10:00 Настройка полей формы: возраст и стилизация
4. 15:13 Добавление отступов и оформление формы
5. 20:20 Обработка данных и отправка в базу данных
6. 30:31 Работа с дополнительными параметрами: религия, курение, алкоголь
7. 40:14 Проверка данных и отладка сессий
8. 50:19 Обновление запросов и завершение выпуска

Answers

## Questions about this video

Как реализовать форму для ввода личных данных пользователя в PHP и Bootstrap?

В видео показано, как с помощью HTML и Bootstrap создать форму с различными полями (возраст, пол, образование и др.), а PHP используется для обработки и записи данных в базу.

Как организовать навигацию между страницами сайта знакомств?

Навигация реализуется через меню с ссылками, которые ведут на разные PHP-скрипты, например, поиск.php, мои данные.php, что позволяет переключаться между разделами.

Какие поля важны для фильтрации пользователей в дейтинг-сервисе?

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

## Full Transcript — Download SRT & Markdown

00:00

Speaker A

Добрый день, дорогие подписчики! Рад вас приветствовать на новом выпуске шоу "Свой сайт знакомств", где мы с вами в режиме реального времени разрабатываем соответственно свой дейтинг-сервис. У нас что? У нас есть авторизация, регистрация, и неплохо было бы реализовать сейчас с вами заполнение личных данных, чтобы потом уже попытаться как-то фильтровать пользователей. Вот я сейчас, что я сейчас хочу? Пройти авторизацию, вот по логину, паролю войти. Всё замечательно. Так получается, наш сервис вернул идентификатор пользователя из базы данных. Вот, давайте попробуем мы что?

00:24

Speaker A

личных данных чтобы потом уже попытаться как-то фильтровать пользователей вот я сейчас что я сейчас хочу пройти авторизацию вот по логину паролю войти всё замечательно так получается наш сервис вернул идентификатор пользователя из базы данных вот Давайте попробуем мы что

00:49

Speaker A

Сделать мы сейчас попробуем сверху создать некое подобие вот меню, по которому у нас с вами будет происходить соответственно переключение между окошками. Так, открываю хедер. Что нам, наверное, отсюда не нужен? Навбар, скролл. Абсолютно. Да, угу. Так, сохраняем, потому что у нас логотип будет сверху храниться. Нет, я не хочу ничего менять. Вот так вот сделаем всё, и, наверное, вот так. Ссылка нам тоже не нужна. Где она? Да, ссылка нам тоже нужна. И начнём вот с первой ссылки. Что мы сделаем? Давайте мы сюда

01:16

Speaker A

логотип будет сверху храниться Нет я не хочу ничего менять вот так вот сделаем всё и наверное вот так ссылка Нам тоже не нужна где она Да ссылка Нам тоже нужна И начнём вот с первой ссылки что мы сделаем давайте мы сюда

01:41

Speaker A

пропишем это раз. Отправлять будем мы с вами, наверное, на скрипт. Так, так, так. Да, у нас пока нет никакого роутинга, поэтому мы с вами будем отправлять напрямую. Получается куда? Напрямую на новый скрипт. Мы его с вами пропишем — поиск. Так, а поиск у нас будет

02:15

Speaker A

открываться по ссылочки поиск PHP да Угу поиск то PHP замечательно сохраняем смотрим Ага на поиск я нажал всё сейчас смотрите вот под эти под эти фильтры которые у нас уже с вами есть нам неплохо было бы сделать анкету давайте мы сейчас этим и

02:43

Speaker A

открываться по ссылочке поиск.php. Да, угу. Поиск.php, замечательно. Сохраняем, смотрим. Ага, на поиск я нажал. Всё. Сейчас смотрите, вот под эти фильтры, которые у нас уже с вами есть, нам неплохо было бы сделать анкету. Давайте мы сейчас этим и

03:17

Speaker A

скрипт с таким именем дальше тут нам что тут нам неплохо было бы подключить да и наверняка у нас там был футер да где-то внизу соответственно сам сам контент на странице мы будем размещать внутри контейнера страпо ского Сейчас посмотрим что у нас

03:52

Speaker A

займёмся. Так, поиск, значит, давайте мы открыли. Дальше что? Дальше нам понадобится создать скрипт. Так, мои данные, наверное. Так, мои данные. Вот как-то так мы его назовём, пока над роутом уже дальше будем думать. Так, всё. Сейчас что? Сейчас я создаю новый

04:24

Speaker A

использовать H1 у нас же в заголовке прописан H2 так мои данные или может быть Моя анкета даже да как-то таким образом Всё мои данные появились слишком большой шрифт потом исправим сейчас что сейчас я бы хотел конечно открыть А так документацию пятого

04:45

Speaker A

скрипт с таким именем. Дальше тут нам что? Тут нам неплохо было бы подключить, да, и наверняка у нас там был футер, да, где-то внизу. Соответственно, сам контент на странице мы будем размещать внутри контейнера Bootstrap. Сейчас посмотрим, что у нас

05:05

Speaker A

вами разложили Да так у нас есть фильтры и местоположения дальше что давайте мы возьмём Select Вот какой-нибудь и его соответственно разместим тут чтобы у нас а был вывод Вот таких вот данных замечательно Select и внутри мы что пропишет

05:37

Speaker A

появится. Так, обновляю страничку, нажимаю на мои данные. Да, у нас есть футер какой-то там подключён, замечательно. Так, сейчас что? Ну давайте сначала мы сделаем div контейнер. Так, класс контейнер напишем, наверное, с помощью или h1, или h2. Нет, лучше h2, наверное,

06:01

Speaker A

Вот давайте мы соответственно вот этот вот ипу верхний заберём у него тип но мы изменим его на текст так так так так что мы пропишет быть риния и для пользователя ВС возраст есть дальше по-моему у меня были где-то стиля

06:38

Speaker A

использовать. H1 у нас же в заголовке прописан h2. Так, мои данные, или может быть моя анкета даже, да, как-то таким образом. Всё, мои данные появились, слишком большой шрифт, потом исправим. Сейчас что? Сейчас я бы хотел, конечно, открыть

07:03

Speaker A

проектах Да чтобы соответственно вы могли вместе со мной разрабатывать что-то может быть что-то мне подсказывать Если вдруг так есть такая надобность так возраст идём дальше так следующее поле какое у нас есть следующее поле есть а нет следующее поле Мужское

07:31

Speaker A

а так документацию пятого Bootstrap, и чтобы мы с вами посмотрели вообще, какие элементы у нас тут есть. Так, именно вот в формах. Так, у нас есть селекты, у нас что ещё есть? Так, давайте я в соседней вкладке открою поиск, чтобы смотреть, какие фильтры мы с

07:52

Speaker A

соответственно потом мы вот этот вот чек будем проверять работает нормально так раз копирую размещаю тут сохраняем обновляю страничку да пол мужской женский всё переключение идёт смотрим дальше м есть дети нет детей соответственно у нас такое поле тоже уже есть вот в

08:23

Speaker A

вами разложили. Да, так, у нас есть фильтры и местоположения. Дальше что? Давайте мы возьмём select вот какой-нибудь и его соответственно разместим тут, чтобы у нас был вывод вот таких вот данных. Замечательно. Select, и внутри мы что пропишем?

08:42

Speaker A

смотреть Нет не сохранилось А сейчас всё так может быть мы всё-таки уточнение сверху будем делать например так наличие детей таким вот образом Ну кстати и так всё понятно Так дальше у нас должно быть поле образования Давайте мы его тоже

09:16

Speaker A

Местоположения. Угу. Так, обновляемся. Всё, у нас есть, получается, селект с местоположением. Идём дальше. Следующее поле у нас должно быть возраст. Возраст мы не сможем сделать переключателем. Почему? Наверное, это должен быть просто какой-нибудь обычный инпут, куда мы ведём возраст человека.

09:40

Speaker A

выбирать Человек дальше у нас есть поле религиозное убеждение где оно ну вот тут оно же тоже готово да мне изначально нужно было взять Вот эту форму Единственное что единственное А я наверное вот от этих value 1 2 3 4 я избавлюсь а что мы

10:00

Speaker A

Вот, давайте мы соответственно вот этот вот input верхний заберём, у него тип, но мы изменим его на текст. Так, так, так, так, что мы пропишем? Быть риния и для пользователя ВС возраст есть. Дальше, по-моему, у меня были где-то стили

10:26

Speaker A

завозить вот поэтому поэтому поступим следующим образом чтобы сразу записывать необходимые параметры в базу данных соответственно тоже самое будет и с верхним полем там где у нас прописан Уровень образования Да напрямую будем отправлять такие запросы в базу данных смы

11:00

Speaker A

да для отступов. Да, они есть. Сколько? Пропустим. Ну давайте пикселей, допустим, 10 для начала поставим. Так, r10. Кто не понимает, откуда я взял вот эти вот классы, посмотрите прошлые выпуски. Я без видео ничего не делаю вот на этих

11:21

Speaker A

реализовывать поиск а потом соответственно при отправке в базу данных запросом мы вот это всё и будем фильтровать анкеты таким образом угу так скопировали хоп ещё и тут тоже ещё вставим так я не вот я не помню у меня

11:53

Speaker A

проектах, да, чтобы соответственно вы могли вместе со мной разрабатывать что-то, может быть, что-то мне подсказывать, если вдруг так есть такая надобность. Так, возраст, идём дальше. Так, следующее поле какое? У нас есть... А нет, следующее поле — мужское,

12:22

Speaker A

верхний угол почему-то так Смотрим Угу религиозное убеждение замечательно ВС есть идм дальше А дальше дальше дальше так тип отношений Тут нужно подумать Каким образом это всё организовать то есть человек в принципе наверное поставит галочки напротив вот тех вариантов которые ему

12:51

Speaker A

мужской, женский пол он у нас есть уже соответственно вот тут в переключении. Давайте мы его заберём. Так, именно вот из скрипта поиск мы его заберём, потому что он замечательно подходит. Так, возраст у нас есть, дальше пол мужской либо женский

13:24

Speaker A

кажется это будет более какойто логичный вариант а вотже для соответственно они могут расставлять несколько галочек вот да так и сделаем замечательно У нас тут будет Селект Да дальше Напишите Кстати в комментариях Если вы хотите как-то доработать уже имеющуюся форму вот если у вас есть идеи

13:52

Speaker A

соответственно. Потом мы вот этот вот чек будем проверять, работает нормально. Так, раз, копирую, размещаю тут, сохраняем, обновляю страничку. Да, пол мужской, женский, всё, переключение идёт. Смотрим дальше. М есть дети, нет детей соответственно. У нас такое поле тоже уже есть вот в

14:17

Speaker A

сделать свой вот в прямом эфире чтобы посмотреть как оно вообще Опа так чтото я лишнего зажал так Ctrl V Ctrl C сохраняем обновляем страничку Да тут у нас что вот как это поле назвать тип отношений тип отношений Давайте таким

14:45

Speaker A

поиске. Может быть, изначально надо было взять вот нашу форму и её переделывать. Да, наверное, так и нужно было сделать, а не с нуля её делать. Но опять же, ну не все поля же у нас получается вводить вот таким вот образом, да? Так, давайте

15:13

Speaker A

это очевидно рост Да рост нам что нам тут подойдёт соответственно обычный инпут вот мы его Давайте возьмём так а потом уже по красоте будем расставлять там должны вводиться целые числа так тут что мы впишем в placeholder давайте мы с вами

15:38

Speaker A

смотреть. Нет, не сохранилось. А сейчас всё. Так, может быть, мы всё-таки уточнение сверху будем делать, например, так: наличие детей таким вот образом. Ну кстати, и так всё понятно. Так, дальше у нас должно быть поле образования. Давайте мы его тоже

16:08

Speaker A

как-то эти блоки и переставить чтобы было красиво Ну давайте сколько Давайте 90 кг напишем рост Пускай будут какие-нибудь 180 или 175 что какие-то средние значения укажем чтобы человек уже дальше расстав Всё самостоятельно так рост вес Смотрим Да рост вес замечательно Всё

16:34

Speaker A

возьмём, оно у нас должно быть. Готово. Вот кстати я смотрю, да, у нас оно всё готово уже. Поэтому нет, всё-таки наличие детей уберём. Раз, раз, вот так, вот так. Образование прописали, замечательно. Сохраняем, дальше обновляем страничку. Вот у нас есть образование, которое будет

16:54

Speaker A

быть ниши в которых Челове работает с они есть Интересно у нас их может же и не быть так найду ли я сейчас Макет с ходу среди вот всех этих проектов моих Да так где же где же наш макет вот

17:18

Speaker A

выбирать человек. Дальше у нас есть поле религиозное убеждение. Где оно? Ну вот тут оно же тоже готово. Да, мне изначально нужно было взять вот эту форму. Единственное что? Единственное, а я, наверное, вот от этих value 1, 2, 3, 4 я избавлюсь. А что мы

17:53

Speaker A

так Нам нужен с вами селек он у нас уже был на страничке вот он так возьмём вот этот вот UE дальше его вставим на каждую страничку в принципе тут все профессии описаны Да которые могут быть и нам неплохо было бы это

18:25

Speaker A

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

18:55

Speaker A

интересная будет группа пользователей вот так в принципе хорошо что мы уже сделали штурм мозговой штурм при помощи нейронокс не на этапе получается вёрстки у нас нету никаких в принципе вопросов потому что рили иде Мне кажется там тоже наверное можно

19:34

Speaker A

завозить. Вот поэтому поступим следующим образом, чтобы сразу записывать необходимые параметры в базу данных. Соответственно, то же самое будет и с верхним полем, там где у нас прописан уровень образования. Да, напрямую будем отправлять такие запросы в базу данных. Зачем нам какой-то новый параметр под один фильтр? Ну зачем? Зачем нам усложнять разработку этого всего? Так, дальше что?

19:56

Speaker A

специалисты они в одной группе так программисты Ну нет всё-таки да программисты разработчики по это Это не совсем ну это айтишники но это более продвинутые ребята должны быть что айтишник грубо говоря администратор что там который бегает подключает компы да Или товарищ который

20:20

Speaker A

Дальше я беру выше, тоже тут размещу. Кстати, вот в этой формочке тоже сразу исправим, поскольку нам уже концепт понятен, да, как мы будем

20:44

Speaker A

таким образом то есть мы с вами пытаемся Сейчас получить максимально быстро какой-то готовый прототип вот мне т в коментариях из пили Почему ты не используешь готовые фреймворки я вам скажу Так а зачем если я довольно-таки быстро пишу на чистом

21:08

Speaker A

реализовывать поиск, а потом соответственно при отправке в базу данных запросом мы вот это всё и будем фильтровать анкеты таким образом. Угу. Так, скопировали, хоп, ещё и тут тоже ещё вставим. Так, я не... вот я не помню, у меня

21:35

Speaker A

сразу да придётся потом всё равно его доработать Но это же проще Когда у вас есть структура и база данных проще будет доработать уже чистый код который Вы получили на каком-то языке чем э воевать с фреймворков и заставлять его выполнять те штуки

21:56

Speaker A

из анкеты пропал куда-нибудь такой параметр как рост. Ну давайте я сейчас доделаю и посмотрю. Он там должен быть в любом случае, и запросы должны улетать в базу данных. Так, сохраним и ту, и эту соответственно формочку нашу. Да, так вот тут сохранить нажал в левый

22:17

Speaker A

появятся какие-то другие товарищи не из нашей ны пока сделаем русский и английский то нашим интерфейсом если там нет Ну хорошо давайте просто вот будем вычислять людей которые знают английский и и всё так язык напишем сверху язык можно Кстати что сделать можно

22:47

Speaker A

верхний угол почему-то. Так, смотрим. Угу, религиозное убеждение, замечательно. ВС есть, идём дальше. А дальше, дальше, дальше. Так, тип отношений. Тут нужно подумать, каким образом это всё организовать. То есть человек в принципе, наверное, поставит галочки напротив вот тех вариантов, которые ему

23:24

Speaker A

результат язык ВС форма влезла Фу у на вами поэтому Давайте поставим отступ какой-нибудь вот тут вот ну хотя бы в 30 пикселей чтобы посмотреть на концовку формы Да всё окей а нам ещё нужна кнопочка нам нужна кнопка так посмотрим как кнопочки у нас

23:48

Speaker A

понравятся. Да, поэтому что? Поэтому мы тоже пока скопируем. Что непонятно? Опять же кто-то может быть ищет одновременно несколько вариантов. Да, кстати, или же нет? Или нам выбрать просто селект? Давайте мы поставим всё-таки сделаем селект с этими вариантами. Мне

24:16

Speaker A

первый раз да Ну ладно так вот тут у нас ди он на что он на закрытие контейнера был да поэтому кнопочку мы сюда поставим дальше buton я изменю на что давайте на inp мы заменим inp чтобы он срабатывал

24:39

Speaker A

кажется, это будет более какой-то логичный вариант. А вот же для соответственно они могут расставлять несколько галочек. Вот да, так и сделаем. Замечательно. У нас тут будет селект. Да, дальше. Напишите, кстати, в комментариях, если вы хотите как-то доработать уже имеющуюся форму. Вот если у вас есть идеи,

25:19

Speaker A

поставить Ну давайте сделаем отступ допустим 20 пикселей пускай будет таким образом 20 пикселей отступ замечательно Всё первый прототип готов Дальше что дальше нам нужно будет обернуть это всё дела формочку и попытаться Отправить данные связаться с базой данных тем более мы у

25:44

Speaker A

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

26:17

Speaker A

России Я же их в этом проекте ещё не подключала как я понимаю да все города России Можете кстати посмотреть такой выпуск уже был местоположение Да у нас ничего тут нету поэтому что Поэтому вот таким вот образом города пока пропишет Главное чтобы всё

26:36

Speaker A

сделать свой вот в прямом эфире, чтобы посмотреть, как оно вообще. Опа, так что-то я лишнего зажал. Так, Ctrl+V, Ctrl+C, сохраняем, обновляем страничку. Да, тут у нас что? Вот как это поле назвать? Тип отношений. Тип отношений, да.

27:09

Speaker A

будет каждому соответственно указателю Ой не Каждому указателю каждому элементу прописать значение фом закрываем так так так прописан идм дальше так местоположение Давайте посмотрим У нас есть получается таблица юзеров Как вы видите уже уже умудрились даже на тестовом домене атаковать спамеры

27:40

Speaker A

которые создали несколько аккаунтов Ну ладно То есть это так местоположение где у нас вот местоположение замечательно мы его сейчас давайте Вот это поле возьмём скопи им вст для того чтобы его захватить Так где оно сюда пишем прописали местоположение дальше

28:11

Speaker A

Что Дальше у нас идёт возраст какое там Значение использовал Сейчас посмотрим воз Я так и написал получается Транслит было быль Так что мы тут видим дальше у нас есть соответственно а два форм чека Да R они э Угу Так так так Type

28:42

Speaker A

name name какой им name дадим М давайте думать какой мы дадим им name name пол должен быть name должен быть пол в любом случае это пол Да проверим не пропадёт ли работоспособность Да работоспособность не пропала поэтому что поэтому

29:12

Speaker A

продолжаем и посмотрим что у нас это значение будет возвращаться мы можем же UE сделать UE какой мужской например да если он выбран Ну ещё мы посмотрим что у нас вернётся value а сюда женский новых видов полов не будем

29:39

Speaker A

включать Так работоспособность пока не потеряна так идём дальше дальше Что Дальше у нас есть вот эта галочка есть дети нет Дети нет детей так - это какой у нас с вами должен быть не что как я назвал поле в базу данных

30:04

Speaker A

дети дети Ага образование так тут у нас должен быть какое-то поле Ну я так и назвал образование вот стараюсь чередовать шоу по очереди То есть это эти проекты что вам было чтобы вам было интересно смотреть их вот чтобы не смотреть один и тот же проект А

30:31

Speaker A

чтобы у вас их было несколько и может быть и желательно чтобы они все были на разных этапах разработки вот чтобы в общем не скучали при просмотре этого чуда которое происходит в прямом эфире так дальше что у нас религиозное

30:54

Speaker A

убеждение такле язва религия вино ВС просто так сюда пропи и мы сейчас вот с Вами просто накида и посмотрим что у нас будет возвращать пост запрос Все ли он ячейки отрабатывает нормально Так тут у нас какое значение так так

31:19

Speaker A

так тип отношений я так его и назвал так уже не религия тут у нас тип отношений дальше что тут Я так подозреваю был рост просто да в качестве Мы в ипу пропишет же тип А давайте тип текст укажем

31:43

Speaker A

а это у нас Что это у нас рост дальше вес Да тут ниже должен быть вес и точно также это не Это тип текст будет хотя Можно наверное ограничить и цифрами это всё добро ещё я видел есть возможность сделать переключение

32:08

Speaker A

стрелочками Ну хорошо пока оставим таким образом так дальше Специалист Или профессия как она там называется о профессия супер берём профессию прописываем для него Да так тут у нас профессия и языки язык Я же тоже язык прописал конечно языки так А почему сект

32:42

Speaker A

появился там же быть должен может быть и множественный выбор Ну хорошо Пока Давайте оставим таким образом Если что мы потом переделаем Нет не А вот раз языки супер супер супер супер всё так сохранились смотрим на формочку формочка не

33:14

Speaker A

сломалась Это уже хорошо А что мы дальше сделаем дальше нам нужно вернуть соответственно вот эти все параметры которые мы ввели Мы же при нажатии на вот но сохранить мы отправляем данные на эту же страницу поэтому что поэтому Давайте

33:35

Speaker A

напишем скрипт на PHP которая просто вот эти данные получит И выведет всё так будем смотреть по Первому полю То есть если у нас пост запрос да то есть через IF если у нас существует вот такой вот Попро [музыка]

34:03

Speaker A

местоположения Ну допустим Хотя наверняка оно будет у кого-то ну оно не должно отсутствовать оно вот если вот такие данные поступили хотя бы один то мы уже можем что можем уже вывести местоположения Угу сохраняем так что-то зависло что-то сломалось

34:31

Speaker A

смотрим дальше так PHP есть а нету лишней скобочки этой дополнительной Так давайте местоположение Питер поставим и посмотрим как форма нам вернёт это значение да сверху Питер вернулся дальше что Аналогично давайте сделаем с возрастом вообще что вообще Наверно я

34:54

Speaker A

возьму вот кани запрос какой-нибудь инсет и просто вот эти данные заберу А я пропустил ещё два поля Да два поля же пропусти Я же не до конца форму то добил или нет Нет я не пропустил У нас есть ещё получается курит пьёт и так

35:15

Speaker A

далее А вот вот тут в таблице Да курение употребление алкоголя то есть два переключателя Хорошо давайте мы пока вот таким образом вем это дело Так где у нас он тут то есть мы мы вернёмся к этому обязательно и выведем все параметры

35:36

Speaker A

которые есть что перед отправкой в базу данных мы должны проверить с вами вообще поступают эти данные или не я же скопировал поступают они или не поступают пароль нам не нужен имя имя нам нужно имя же мы прописывали по-моему

35:53

Speaker A

при регистрации да да имя мы при регистрации прописывали и Наверное нужно дать возможность его редактировать или нет пока не знаю Ну посмотрим так хорошо сейчас вот для каждого вот этого параметра мы с вами сделаем вот такой вот пост

36:13

Speaker A

запрос Так давайте тут мы что тут мы сделаем переменную а местоположения её присвоив Эта штука должна работать без проблем потом просто оператор вывода заменим и всё так местоположение Давайте поставим Казань посмотрим Будет ли что-то менят Блин так мне нужно пролистнуть не

36:41

Speaker A

страничку да Казань выводится дальше Что Дальше у нас должен быть по плану возраст раз делаем вот таким вот образом наверное вывод можно убрать он нам не нужен уже с вами мы проверяем просто следующее поле так возраст пускай будет

37:11

Speaker A

20 посмотрим что вернёт у нас 20 возвращается супер Дальше что дальше Должен быть пол пол Вот он так посмотрим Вернётся ли Пол Да если не вернётся будем как-то по-другому это всё дело организовывать так пол Ну давайте женский поставим посмотрим Вернётся ли

37:47

Speaker A

или нет женский женский пол а мужской и мужской возвращается супер так дальше Что Дальше описание какое-то у нас может быть которое мы ведём Позже наверное да так фото тоже пока заморозити Давайте пробуем сделать поле с детьми чтобы отправить в базу

38:19

Speaker A

данных так я так понимаю что если у на допустим не возращается Вот это поле у нас не срабатывает хорошо А если я пустой отправлю А я сохранился вообще так что-то подтормаживает Сегодня у нас сайти так ещё раз нет детей

38:49

Speaker A

отправляю есть значение нету значения тоже нету значения Давайте смореть именно не так у нас с тем полем так Дети дети дети Где же вы так нет детей а Ну конечно я же не Ну кстати я не прописал в

39:10

Speaker A

inp Да inp так мы что мы Давайте посмотрим чекбокс и как что он вообще возвращает так пост PHP Как получить вот отмечено поле или не отмечено открою сразу два варианта Так у нас тут есть подсказка на английском так если и если есть если

39:35

Speaker A

- value такое-то да так hidden checkbox Ну мы также через value то и сделали [музыка] а странно Ну ладно так сижу так человек тупит Он простейшей задаче ничего не проходит Попробуйте на чек не реагирует ставил уже всё тоже самое а как нам через PHP

40:17

Speaker A

получить его а вот нам таким образом проверяется лишь наличие перенова то есть проверяем наличие переменной если оно есть то Дети есть если нету то а то есть если есть наоборот детей нету А если нету то тогда уже А мы что мы же

40:43

Speaker A

можем возвращать вот значение вот этой переменной вот дадада таким вот образом то есть у на дети примут либо нужно и вот мы посмотрим так Какое значение у нас они примут так вставлю нет детей возвращается единичка А если я не

41:17

Speaker A

поставлю его нету Всё значит что вот тут нужно подумать либо отправлять нолик то есть либо у нас вообще поле будет пустое То есть если стоит единичка значит что мы тут можем что Дописать Ну давайте Допиши такое условие Если получается вот это поле у нас

41:44

Speaker A

равняется единички единички то тогда что то тогда дети у на примут знание есть да наверно есть есть ещё раз есть а иначе элса элса у нас дети примут значения нет нет нет И тут мы что сделаем тут нам нужно

42:32

Speaker A

вывести уже готовую переменную дети таким вот образом так вставляем сохраняем и попробуем отправить запрос так я ничего не отметил сохраняю всё где-то ошибка Так давайте её искать ощущение что нет дополнительно Да так оно и есть Так шестнадцатая строчка шестнадцатая

43:04

Speaker A

строчка ошибка где-то тут что не так А ну конечно же вот так должна быть раз всё сохранились обновляем страничку так нет детей стоит то есть галочки нету наоборот поставим убедимся что наоборот нужно сделать есть Ага значит наоборот мы

43:37

Speaker A

меняем раз может быть конечно проще было переписать там поле Ну ладно мы же с вами только продумываем логику работы Да так поставил нет детей возвращается нет А если не поставил возвращается есть супер всё это поле готово так следующее поле у нас какое с

44:03

Speaker A

вами образование Так так я беру вот сюда Вставляю описание фото пока не трогаем следующее поле у нас образование должно быть тут я думаю никаких трудностей не должно возникать это поля простые есть у них знание возвращатся лёгкую но на всякий случай Мы с вами это

44:30

Speaker A

проверим вот я выбираю среднее профессиональное нажимаю сохранить Да среднее профессионально вернулась так идём дальше следующее у нас поле какое следующее поле у нас религия я его тоже соответственно вот так вот вставлю вот так вот так проверяем где оно у нас тут

45:00

Speaker A

Давайте допустим выберем буддизм допустим да буддизм вернулся супер идём дальше так ну следующие поля мы добьём легко и просто Да так религия дальше тип отношений у нас идёт очень много полей вот я замети мы пытаемся максимально такую анкету сделать чтобы

45:32

Speaker A

сразу выяснять подходит нам человек или нет конечно могут быть осечки да но вот мы стараемся максимально упростить задачу для пользователей нашего сайта знакомств будущего я Стоит ли внедрять какие-то психологические практики тесты и так далее Нужно ли это делать Да всё

46:14

Speaker A

залетает данные передаются дальше Вот вы скажете наверное что очень долго я вот это вот делаю можно было сделать быст Ctrl Ctrl V Зачем ты проверяешь каждое значение выводится оно или нет проверяю лиш для того чтобы посмотреть передаются данные или нет потому что если они не

46:40

Speaker A

передаются я потом потрачу больше времени на поиск этой ошибки чем если бы я допустим её исправил вот тут вот так дальше что поле профессия у пере Дан проще проще отловить эту ошибку вот сейчас то есть мы с вами таким образом

47:06

Speaker A

проверили каждое поле и уверены в принципе в работоспособности коды профессия и с языками что-то нужно будет придумать вот что-то прям нужно взять и придумать потому что ну тоже множественный выбор может быть вообще от этого поля отказаться Ну правда но не придёт же к нам

47:30

Speaker A

регистрироваться на сайт человек который не знает русского языка маловероятно да маловероятно Так какое там поле языки уже до него дошёл язык так Русский например супер так все поля есть И что у нас осталось два поля курит ьт поним

47:56

Speaker A

сде переключателя Да который у нас есть языки языки так не курит не пьёт это у нас Что это у нас тот же чекбокс Давайте мы его целиком заберём сразу имена дадим Какие нужны в базе данных так так так вниз

48:28

Speaker A

Да сюда вот я оставляю всё это добро так сохраняем проверим на страничке как это всё отображается Да появилось два Вот таких вот переключателя разд курение и употребление наверное тут не курю будет так не курю и не пью чтобы покрасив было и отступ сделаем

49:01

Speaker A

наверное Ну пикселей 30 перед кнопкой пикселей 30 Так в базе данных это у нас Какие параметры должны быть соответственно Т раз так и обработчик у нас будет в точности такой же как и у предыдущего нашего чекбокса так пьёт и вот тут вот курит

49:40

Speaker A

Да так Курит вот как-то так так пьёт курит замечательно Ай не тормози что такое-то вроде не включал Вроде бы да Нет он не включён Почему тормозим так вот наверное минусы Единственный минус разработки в Облаке То есть я пишу сразу на хостинге хостинг

50:16

Speaker A

кстати бегет можете регистрироваться там хороший Я с ним работаю уже больше 5 лет если не больше на самом То есть все сайты на м держу он прям реально реально хороший так тут у нас что так домен Как назывался у меня вот

50:38

Speaker A

этот тесто вот так вот он назывался тут я тоже открою его так мы последние два поля Тестируем то есть курит пьёт и наверное будет возвращаться не курит не ьт как-то так либо да либо нет или сделать но мы Давайте таким образом

51:02

Speaker A

сделаем Пока так так поле получается курит если отмечено значит переменная будет курит Да курит тут тоже так нет тут соответственно да Опять же возможно я что-то где-то по смыслу потеряю и мы это сейчас будем исправлять так пьёт пьёт нет

51:58

Speaker A

То есть если не отмечено то пьёт и курит Ну давайте на всякий случай вот мы сюда что мы сюда выведем вот Верхнее значение так А я про хостинг говорил да хостинг бегет классный то есть на нём держу все

52:14

Speaker A

проекты свои и клиентские тоже И вот рабочие тоже работодателей прошу чтобы держали они именно на этом хостинге так сохраняю смотрим так посмотрим нет нет да А если я уберу галочки Дада супер Так ну что всё готово для отправки

52:45

Speaker A

информации в базу данных единственное давайте мы на структуру баз данных Посмотрим Да я не хочу ничего добавлять так Смотрим тут у нас что пт что по-моему проще поставить везде текстовые поля так Пароль текст возраст in и А зачем нам in И кстати будет проще

53:13

Speaker A

потом при сортировке организовать что больше меньше такого поля дети и Нет давайте дети у на станут получается про текстом бу тип данных дети текстом дальше рост тоже инт вес это инт профессия текст языки текст это понятно так курит пьёт

53:38

Speaker A

тоже пока станут текстом но потом при оптимизация мы наверное попробуем с вами и какие-то другие параметры сделать так курит пьёт изменить так меняем меняем что меняем на текст пока местоположение тоже пока станет текстом потому что у нас не

54:06

Speaker A

готова таблица а с городами поскольку таблица с городами не готова то мы э при отправке не того значения просто потеряем запрос поэтому мы целиком отправим пока название города но когда будет готова таблица Мы конечно же будем отправлять идентификатор А

54:25

Speaker A

может быть Не будем переделывать посмотрим так всё логика вроде есть пробуем написать запрос Это что это у нас должен быть SQL запрос на добавление данных вот такой он большой и длинный Давайте попытаемся прописать Мы кстати уже реализовывали какой-то запрос

54:46

Speaker A

Да тут на добавление по-моему при регистрации Вот он тут есть я сейчас что я сейчас возьму вот этот кусочек да где он вот он Да связь с базой данных У нас тут есть также я сейчас сверху пропишу То есть у нас все параметры

55:01

Speaker A

готовы Вот они вот они сверху есть единственное что мы не будем править mail логин пароль имя а вот начинаем сразу с возраста возраст фото тоже пока не трогаем фото не трогаем описание не трогаем доктис Вот это шени рост вес профессия языки курит

55:31

Speaker A

пьёт местоположение связаться связаться тоже пока уберём это будет наверно в другом поле у нас с вами что мы сейчас вообще запутай так дальше Что Дальше я возьму вот эту штуку которая отвечает у нас за подключение к базе данных это потом что потом мне

55:57

Speaker A

по аналогии это д и сюда Я уже вставлю вот этот запрос в двойных кавычках соответственно тут у нас есть значения Какие так так это я раз копировал Да дальше у нас соответственно будут все те же самые значения доллар внутрь доллар и оберн уже в

56:31

Speaker A

одинарные скобки в одинарные кавычки Ну не такие какие у нас тут а просто одинарные кавычки чтобы это воспринималось как переменная То есть я ставлю доллар дальше что оборачивать Динар кавычки вот рутинная работа но ноно нож сделаем никто У нас За нас это не

56:59

Speaker A

пропишет так угу оборачиваем также во одинарное ставим раз добавляем вот сюда так идём дальше блин потерял строчку Ну слава Богу осталось уже чуть-чуть совсем Угу Как вы думаете не устанет ли человек заполнять такую большую анкету Вот мне кажется уже что вот дейтинг сервисы

57:40

Speaker A

специально где-то Возможно даже умышленно не дают таких больших анкет чтобы просто не растерять аудиторию напишите свои мысли в комментариях Вот правильно ли я думаю может быть так не считаете но хочется сделать по-настоящему работающий сервис который приносил бы пользу людям вот а не просто

58:07

Speaker A

вот чтобы завлекать и подсаживать на себя так последнее поле у нас с вами идёт замечательно то есть И тут нужно добавить уточнение В каком случае мы это этот запрос отправим мы запрос отправим Вот именно в какую строчку А в ту строчку с идентификатором

58:34

Speaker A

который у нас был с вами в самом начале вот с вот этим вот ID и то есть ID должен быть равен тому значению которое у нас возвращалась помните в самом начале Блин не могу эту скобку поставить потом просто скопирую так ID

58:58

Speaker A

раз то есть это ID ID и он должен быть равен вот сейчас я скажу чему он должен быть равен у нас вообще-то возвращалось значение из сессии то есть какая-то такая штука была то есть доллар так пое та сейчас мы попробуем отправить

59:31

Speaker A

Так где у нас сессии кстати сессии не подключены надо будет конечно их вынести наверное в хедер или даже в скрипт роутинг но пока прописываем таким образом так и посмотрим не регистрацию а именно авторизацию где она у нас анкета рек поиск так кабинет наверно

59:58

Speaker A

посмотрим да мы посмотрим кабинет вот Session - это у нас ID User вот это вот переменная по-другому я её назвал А ну давайте раз там у нас был ID User Мы также и сделаем ID User тут Да так

60:14

Speaker A

доллар так ID User равняется так точка запятая стоит на конце тут я скопировал внизу вставляем сейчас что сейчас попробуем менять данные соответственно Меняются ли они так и нам необходимо будет Что сделать необходимо будет так вот у нас тут рек был вот вот

60:46

Speaker A

этот запрос выполнить хотя бы разочек посмотреть как это ВС работает Так у меня утека вотже целый день работал сегодня посмотрим вобще как оно ну давайте вот мы мы расставим какие-то параметры у меня ID сейчас какой Под каким я зашёл я зашёл под ID третьим то

61:10

Speaker A

есть вот тут вот должны измениться значения если они меняются всё супер так давайте от балды что-нибудь простам так бац Вот так вот Вот так вот вот да так так вот допустим да мы расставим так так так Вот так вот дальше

61:37

Speaker A

язык пускай будет русский всё сохраняем а подождите А мы сессию Не запустили Да смотрим на параметры А ничего не получилось почему интересно Неужели сессия не была указана Да сессия Конечно я не вызвал сессию это печально то есть мы сессию Не

62:04

Speaker A

организовали так идём дальше попытка номер два сохранились дальше раз два просто проверяем робото способность так три пам-пам так вот одну так поставим сохраняем се смотрим обновились данные нет данные не обновились очень печально так давайте посмотрим ещё раз наш запрос Неужели где-то

62:47

Speaker A

ошибка Неужели где-то ошибка ID User ID Угу в одинарных в одинарных А что если вот так написать ID неужели ни одно это не отработал у нас с вами Хорошо я сейчас что сделаю я сейчас не буду наверное все поля обновлять так

63:13

Speaker A

обновились Да обновляемся не буду я все поля обновлять Я просто одно вот веду Питер и сохраню смотрим не работает Печально что эта штука не работает хорошо Посмотрим ещё Давайте на тот запрос вот где у нас была регистрация там же у нас был уже ирт

63:49

Speaker A

запрос что я сделал не так ну по логике то всё правильно так Select From Ну в такие одинарные Я тоже оборачиваем так местоположение Ага совпадает интересно всё всё это дело запрос очень большой так так сессия подключилась местоположение есть всё

64:40

Speaker A

есть все параметры получили дальше что что не так-то Неужели где-то мог запятую пропустить Или точку как оно обычно то и бывает пол дети образование религия тип отношений рост вес профессия языки курит пьёт местоположение р ID Так если сейчас

65:14

Speaker A

запрос не прокатит что мы сделаем Мы кстати К какому полету привязывали мы привязывали с вами Вот перво по уже будет да Ага То есть если не пройдёт мы просто можем короткий запрос какой-нибудь попробовать так ещё раз сохранились выбираем вот так

65:45

Speaker A

вот отправляем смотрим У нас должно записаться хотя бы местоположения а оно не пишет так хорошо значит что значит я Давайте вот этот запрос попробую сделать более коротким и найти ошибку Она же где-то есть так оставим допустим просто одно

66:20

Speaker A

местоположение или нет Давайте ум сначала вот просто проше тройку внутри у нас же третий ID должен быть вот тут вот да третье ID мы под ним идём Москва сохранить обновляем страничку Тоже А почему местоположения у нас нолико вое Почему ноль то там откуда

66:57

Speaker A

он там взялся может ещё раз со структурой посмотрим Нет это текстовой тип так хорошо значит что значит мы Давайте запрос просто наш порежем до изменения лишь одного поля до место положения Вот раз вот оно тут два чтобы просто понять где у нас

67:32

Speaker A

может быть ошибка Да так сохраняем с дальше что указываю допустим Казань сохраняем обновляем страничку так идём в обзор обзор ничего не произошло хорошо Так что мы ещё можем придумать а подождите Ну мы же не ирт запрос делаем мы же делаем

68:19

Speaker A

апдейт Конечно Нам же обновить запрос нужно у нас это в блин перепутали запрос Конечно это же апдейт должен был быть ладно что переписываем запрос но сейчас мы пойдём уже другим способом мы напишем Аде юзер местоположение Так что у нас там по

68:47

Speaker A

синтаксису ложение присваиваем значение вот ему Да вот таким вот образом раз и дальше у нас идёт уточнение р и давайте мы тут пропишет она вот она сечас ято думаю почему запрос так местоположение Давайте Питер выберем сохранить идём дальше Да в

69:39

Speaker A

обзор смотрим записалось тоже не записалось Да так просто Т укажем так update User Set указываются значения и потом соответственно сам параметр сохранился всё меняем местоположение допустим на Москву идём дальше сохраняем обновляем базу данных Да покидаем страницу Москва записалась замечательно

70:33

Speaker A

Неужели была проблема вот тут вот в сессиях Session Start так ID User А мы можем вот мы же можем Да попросить вывести допустим ID юзера в данный момент можем же так я Неужели потерял авторизацию мог я потерять её ещё раз

71:08

Speaker A

давайте я е легко мог потерять конечно так Так какой там пароль-то был Блин вот такой пароль тул я пока логины и пароли держу в открытом виде Да знаю что так делать нельзя А у нас не поступает он так

71:38

Speaker A

S у нас данные то не поступают Почему интересно так так так посмотрим Хорошо если я снова допустим иду в кабинет кабинет они уже потерялись у проблема с сессии так Session Start кабинет Ага тут идёт авторизация ID User и дальше она

72:16

Speaker A

пропадает магическим способом каким-то так вот тут я сохранился замечательно Где в кабинете Почему у нас пропадает сессия Ну в моих данных её соответственно тоже нету уже так сессию хорошо так ещё раз мои данные Session у нас должен быть мы его

73:01

Speaker A

передали Давайте в header посмотрим там нет уже старта сессии нигде Да так Session Start идём дальше Угу Ну давайте Session ID ещё раз выведем на всякий случай Почему теряется сессия ещё раз тут же она есть Так сменю ко Я пароль просто на 1 2

73:40

Speaker A

3 4 так 1 2 3 4 1 2 3 4 войти есть мои данные А в моих данных уже ничего нету в какой-то момент всё теряется кабинет так мои данные угу обновляемся Тоже ничего нету Так ладно хорошо мы сейчас что сделаем мы с

74:41

Speaker A

вами а Наверное оставим пока На данном этапе ошибку Я обязательно поищу Так Подождите а у нас Ну в принципе подключение к базе данных не должно влиять на что-то Да мы же в сессии всё записывали да Хорошо пока оставим Этот

75:10

Speaker A

проект на этом этапе А в следующей серии найдём ошибку и исправим Спасибо что смотрели в принципе мы что сделали мы с вами Вот завер вот такую формочку убедились что все эти параметры передают данные осталось только организовать связь с базой данных начали Но сегодня

75:34

Speaker A

немножко не успеваем Поэтому в следующий раз закончим Спасибо что смотрели видео ставьте лайки подписывайтесь на канал оставляйте комментарии и для подписчиков на бусте я выложу все исходные материалы в виде кода дам данных на бусте всё увидимся

Topics: PHP HTML Bootstrap форма пользователя сайт знакомств регистрация авторизация фильтрация пользователей веб-разработка дейтинговый сервис


---
This is the markdown twin of https://sozai.app/transcript/dating-site-user-data-form-php-html-bootstrap/ — the same content, without the markup.
Published by SozAI (https://sozai.app). Reuse and quotation are allowed with attribution and a link back.
Machine-readable index: https://sozai.app/llms.txt · data API: https://sozai.app/api/
