Доктор, доктор, я где-то подцепил толерантность!
Мне даже неловко о таком спрашивать, но все найденные статьи не помогают, я там ничего не понимаю, потому что в теме я ориентируюсь ровно настолько, чтобы написать свой невнятный курсовик, а этого мало.
Делаю веб-сайт в Visual Studio с подключением БД из Access. Пара вопросов.
1. После авторизации на сайте появляется возможность сделать заказ. Пользователь выбирает из выпадающих списков интересующиее его опции, после чего вся инфа уходит в таблицу Заказы. Как сделать так, чтобы передавалась информация о заказчике? Все, что я придумала, это добавить так же поле со списком всех зарегистрированных пользователй. Но это же какой-то бред, т.к. залогиниться можно под одним аккаунтом, а заказ отправить от другого.
2. Все в том же заказе. Есть таблица Рестораны, состоящая из кода ресторана и его названия. Есть таблица Залы, состоящая из кода зала, названия и кода ресторана (т.е. к одному ресторану может относиться несколько залов, один зал относится только к одному ресторану). Как сделать так, чтобы после выбора ресторана в списке залов отображались только залы, привязанные к этому ресторану?
Желательно, конечно, дать подробный ответ, разжеванный как для дураков, но и хотя бы указание, где об этом написано, и что именно там читать мне тоже очень помогут.
2. При выборе ресторана вы знаете его id. Значит, можно получить список залов выбрав только те, у которых id ресторана равно этому id. А какая у вас структура базы? Не видел MSAccess лет десять, но если там есть что-то похожее на SQL, то пр иналичии в таблице залов id ресторана можно сделать так:"SELECT * FROM restaurants_rooms WHERE restaurant_id = {{id ресторана}}".
Ну и так как уровень неизвестен, то задавайте вопросы.
1. По первому я точно ничего не знаю. Т.е. про session я вчера читала, нашла, где как раз проставить, чтобы данные оттуда брались, но я не знаю, как туда id записать.
2. Я спрошу вечером, т.к. на работе сейчас и нет перед глазами ничего. Что-то похожее там есть, но я не знаю, где это нужно прописать ) Мб вечером сама найду.
1,5. Чтение/запись в сессию различается в разных языках, но суть одна: список ключей с их значениями. Что-то вроде значений переменных или ассоциативного массива, только хранятся они не в коде приложения, а в другом месте. Из поста не понятно на каком языке пишете и, соответственно, ответить не могу. Думаю, на запрос в стиле "How to write session in {{тут_ваш_язык_программирования}}" в гугле будет много информации.
2. Структура базы должна быть такая, чтобы была связь между таблицей ресторанов и таблицей залов. Например, добавив столбец "id ресторана" в таблицу залов. Как его выбрать – на SQL выше написал, но лучше утонить у гугла как оно в Access рабоатет (:
1. Если бы я знала, на чем я пишу Х)) SQL там, вроде. Понятно, погуглю )
2. Естественно связь между таблицами в базе есть.
Вот так примерно выглядит моя страница
Есть подозрение, что я не понятно описала задачу. Мне нужно, чтобы пользователь, выбрав в первом списке ресторан A, во втором увидел только залы 1-A, 2-A и не видел 1-B, 2-B и т.д. Т.е. по идее же в вашем коде id ресторана будет меняться в зависимости от выбора пользователя. Выходит, его выбор тоже записывается в сессию и подставляется в залы? оО
1. Поиск залов ресторана по запросу. Если при выборе ресторана отправляете запрос на сервер для поиска залов, то всё просто – отправляете запрос с id ресторана, выполняете этот sql и отдаёте список залов, у которых посланный id ресторана. Далее подставляете это в форму.
2. Все залы и рестораны сразу вывалены в форму. Тогда тут при клике на селектор ресторана каким-нибудь клиентским js надо вставлять подходящие залы из заранее подготовленного объекта-списка. типа того.
Уже, пожалуй, что-то конкретное можно ответить только если посмотреть конкретный код.
Приложенный код мне понятен, но там не JS (
Вот кусок кода, отвечающий за выбор ресторана:
А вот это код всей страницы для отправки заказа:
Про сессию нагуглилось чтение и запись, а так же общие сведения. Не то? Выглядит, вроде, очень просто.
Да, это похоже на то, что нужно, и выглядит адекватнее, чем то, что находила я )
Посетите также мою страничку
b-sovety.ru/user/TeresaO03026043/ оформление дебетовых карт visa
33490-+