Сформирование запроса для передачи
У меня очень специфичная задача. Покажу ее на примере:
Допустим, необходимо создать приложение "Блокнот". Человек заходит в приложение и создает новый блокнот "Машины", с двумя параметрами (марка, цена), после чего заполняет его: Audi 3 500 000 Москвич 35 000 Lambo 150 000 000 То есть человек сам выбирает количество полей, название полей, а потом по этим полям, подобно mysql таблице, вводит машины. Сам вопрос состоит так: как эту кучу информации переслать на php и обработать для добавления в таблицу, ведь можно создать и 4 поля (имя, фамилия, рост, вес) и добавлять девушек? Запрос всегда состоит по разному. |
Ну ведь есть еще и NoSQL базы. То есть базы без определенной схемы. Например - MongoDB. Пересылайте как есть (в виде JSON-структуры, например). Скрипт сохранит как есть (то есть в виде объекта с какими-то полями). Подругому будет нереально (исходя из условий задачи)
|
По мне так, надо сделать такую структуру:
1. Параметр – это те самые талии, машины и т.д. 2. Данные – количество или качество 3. Поле которое связывает данные и параметры в один массив 4. Инкремент 5. Поле которое привязано к запросу пользователя И ключ по 4 и 5. |
Надо придумать как сделать этот запрос не хаотичным, а всегда соответствующим определенным критериям. Иначе будет полная лажа. Данные ведь нужно будет как-то еще и обратно получать, что, в такойм случае, будет доставлять не меньше гемора
|
Вот я про то же, трудная задача.
|
Таблица "блокнот", состоит из айди, имени блокнота и числа параметров.
Таблица "поля", состоит из номера поля по порядку, айди блокнота и имени поля (опционально - типа поля). Таблица "записи", состоит из номера записи по порядку, номера поля, айди блокнота и данных (например строка, или опционально строка и число интовое и не интовое). Загонял бы в базу примерно так. |
Думал сделать так: ограничение будет все равно у количества параметров. Например, 10. Тогда можно создавать все под 10, а если пользователь создал меньше, то остаток просто null. Не действительно и учитывать не надо.
Но это некрасивое решение. Добавлено через 1 минуту Цитата:
|
В вашем случае таблица "поля" будет такая (в случае, если айдишник блокнота 1):
Код:
номер п/п | блокнот | имя поля |
Неплохое решение, обязательно разберу. Очень удобно)
|
Часовой пояс GMT +4, время: 23:47. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.