Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как оптимально организовать базу данных. для быстрой и корректной работы на php 
:(
    Опции темы
GirlRedHat
  Дата 29.4.2011, 00:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 17.10.2007

Репутация: нет
Всего: нет



Здравствуйте, я начала изучать эту гремучую смесь PHP и MySQL и по советах многих на этом форуме делаю это в процессе написания проекта.

Суть проекта - сайт-форум, где каждая тема - опрос. 

Сейчас я на стадии размышления о структуре базы данных и ее корректной работе. 

Вот мои попытки:
Таблица 1. Участники. Тут понятно, я думаю, что я хотела сделать.
-----+--------+-------+-------+-------+---
UID | name | pass | email | town |....
-----+--------+-------+-------+-------+---

Таблица 2. Список тем и количество проголосовавших в этих темах.
-----+-----+----------+-------+-------+---
TID | title | contain | date | voted |....
-----+-----+----------+-------+-------+---

Таблица 3. Ответы до тем опросов.
-----+-----+--------+---------+
AID | TID | name |  voted |
-----+-----+--------+---------+

Таблица 4. Эта таблица создается для каждого вопроса, вынесенного на голосование. здесь хранятся ID всех пользователей, что уже проголосовали. Для  чего мне это нужно? Чтоб добавить функциональности, чтоб можно было вывести результаты голосования только девушек, или людей моложе 40 лет и т.д. 
---+-----+-----------+
ID | UID | answer |  
---+-----+-----------+

А вопрос мой собственно вот в чем. 

1. Рациональная ли такая структура с точки зрения быстроты работы и удобности в пользовании? 
Не слишком долго будут выбираться варианты ответов с таблицы 3 и поиск по пользователях, когда будут заданы критерии? Может можете что-нибудь порекомендовать?

2. Если я б хотела добавить возможность голосовать за фото, видео или музыку, то мне стоит сделать соответственное поле в табл.2., где будет хранится ссылка на объект и оставлять его пустым или со значением "0", когда нету мультимедиа приложений. 
Или сделать поле в той же табл.2, куда записывать с какой таблицы брать данные и сделать еще один аналог третей таблицы, где будет кроме писаных еще поле для ссылки на мультимедиа...
Или может есть лучший способ? Поделитесь, пожалуйста.

3. И вообще, что Вы думаете о всей этой структуре? smile Какие рекомендации?

Извините за возможно рассмешивший Вас способ выкладывать мысли, но по другому не умею smile 
Спасибо всем. кто откликнется!!!!.

К модераторам - я знаю, что в правилах прописано "Один вопрос - одна тема", но дважды излагать это все я сочла бессмысленным. Если все же надо сделать 2 темы - я буду послушной smile и я очень надеюсь, что попала в тот раздел, что нужно, поскольку я сочла важным тот факт, что моя база данных рассматривается с точки зрения php. Спасибо.

PM MAIL   Вверх
patap
Дата 29.4.2011, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 26
Всего: 40



как-то так

таблица users
User_ID | name | pass | email | town |

таблица topics
Topic_ID | (User_ID) | title | content | date 

таблица posts
Post_ID | (User_ID) | (Topic_ID) | content | date

таблица votes
Vote_ID | (User_ID) | (Topic_ID) | vote



--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
ksnk
Дата 29.4.2011, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Цитата(patap @  29.4.2011,  15:51 Найти цитируемый пост)
Vote_ID | (User_ID) | (Topic_ID) | vote

Голосуют только зарегистрированные юзеры? Или все посетители сайта?

Добавлено @ 16:13
Куда-то нужно "деревянность" прикручивать. Вероятно, в таблицу топиков...

Это сообщение отредактировал(а) ksnk - 29.4.2011, 16:14


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
patap
Дата 29.4.2011, 18:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 26
Всего: 40



Цитата(ksnk @  29.4.2011,  15:12 Найти цитируемый пост)
Голосуют только зарегистрированные юзеры? Или все посетители сайта?

это не ясно, мне по крайней мере ). ну и дерево, тоже надо у ТС спрашивать


--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
GirlRedHat
Дата 2.5.2011, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 17.10.2007

Репутация: нет
Всего: нет



Цитата(ksnk @  29.4.2011,  14:12 Найти цитируемый пост)
Голосуют только зарегистрированные юзеры? Или все посетители сайта?

Сначала планирую сделать только зарегистрированным возможность голосовать, а потом, возможно, расширю это дело smile но это потом.... Пока по минимуму.

Цитата(ksnk @  29.4.2011,  14:12 Найти цитируемый пост)
Куда-то нужно "деревянность" прикручивать. Вероятно, в таблицу топиков...


Спасибо, народ smile буду пробовать.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0440 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.