X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Помогите с созданием таблиц, пользователи, записи, комментарии, ...
Banderas
Banderas
Topic Starter сообщение 11.3.2011, 1:41; Ответить: Banderas
Сообщение #1


Здравствуйте. Создаю таблицы для сайта. Возникло много вопросов.
Для определения пола (sex) я решил создать поле типа INT с длиной 1, будет принимать значение 0 или 1 (мужик, баба).
Вообщем по скрину видно что и как. Правильно ли создана таблица, или лучше создать отдельно поле для Имени, Фамилии, Адреса, Страны, ...
Прикрепленное изображение
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Гость_0_* Гость_0_*
сообщение 11.3.2011, 11:22; Ответить: Гость_0_*
Сообщение #2


Banderas, лучше и правильнее сделать так имхо:
'sex' ENUM ('0', '1') NOT NULL
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 12.3.2011, 0:59; Ответить: ZiTosS
Сообщение #3


Banderas,
Для определения пола (sex) я решил создать поле типа INT с длиной 1, будет принимать значение 0 или 1 (мужик, баба).

Для поля sex лучше TINYINT(1), меньше будет места занимать.
password, name, mail, address, phone лучше сделать varchar(255) - все же это не данные больших объемов.
Пароль обычно если он хранится в md5, его длина max 32 символа. ФИО пользователя не превышает 255 символов, email так же. Для адреса 255 тоже наверное хватит. Для телефона и подавно.
А вот login ты ограничил 25-ю символами. Я думаю этого достаточно, но перед занесением нужно проверять на превышение...
Правильно ли создана таблица, или лучше создать отдельно поле для Имени, Фамилии, Адреса, Страны, ...

Смотря зачем тебе эти поля нужны. Если тебе, к примеру, нужно просто выводить ФИО пользователя, то хранить конечно проще ФИО. Если тебе нужно поприветствовать пользователя по имени, есть три варианта:
  • Так же хранить ФИО, но скриптом сервера или функциями в БД разбивать данные на нужные части
  • Создать вместо ФИО -> Фамилия, Имя, Отчество
  • Создать два поля -> ФИО, Имя

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

P.s.: Работать с числами проще чем со строками... Понять просто... Числа - "012345...9" (10 знаков), строки - "abcde...xyzабвгд...ыюя$-_()&^;:<>%@#!~`..." (множество знаков огромное)


Поблагодарили: (0)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Banderas
Banderas
Topic Starter сообщение 12.3.2011, 1:05; Ответить: Banderas
Сообщение #4


Лёха, Дима, спасибо, буду править и дорабатывать...
Нужен будет аватар, какой тип поля лучше использовать для картинки? Просто варчар в котором будет хранится ссылка на картинку?
Да и для поля URI, предназначенного для mod_rewrite, туда заносить желаемый адрес?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 12.3.2011, 1:07; Ответить: sc2r2bey
Сообщение #5


(Banderas @ 12.3.2011, 0:05) *
Нужен будет аватар, какой тип поля лучше использовать для картинки? Просто варчар в котором будет хранится ссылка на картинку?


да


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 12.3.2011, 1:19; Ответить: ZiTosS
Сообщение #6


Banderas, по поводу аватарки - её можно хранить как на сервере, так и в БД. Редко встречал второй способ. Но если хранить в БД, то однозначно BLOB.
Если в БД, хранить только путь до аватарки, то мне обычно хватает 255 символов, если скриптом имена для файлов свои составлять, чтобы не были длинными. Т.о. VARCHAR(255) (сейчас MySQL 5 по-моему и больше чем 255 для varchar разрешает)
Да и для поля URI, предназначенного для mod_rewrite, туда заносить желаемый адрес?

Конечно структура mod_rewrite обычно немного по другому строится, но если не обращать внимания на эстетичность использования ЧПУ, то поле лучше делать TEXT (кто знает какой вложенности будет ссылка - 255 может и не хватить)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 12.3.2011, 1:24; Ответить: sc2r2bey
Сообщение #7


2-й способ хранения аватарки считается не оптимальным


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Banderas
Banderas
Topic Starter сообщение 12.3.2011, 1:40; Ответить: Banderas
Сообщение #8


Ещё раз спасибо, Сёрфер, рад что подключился к моей теме :rolleyes:

Вообще с mod_rewrite никак не могу разобраться... в инете прочитал много чего, но результат почти никакого. Есть гдето хорошая документация по ЧПУ?
Я хочу создать блогосферу, для каждого пользователя создавать свою папочку ух как не хочется, это глупо... а вот если преобразовать сайт.ру/userpage.php?login=Banderas в сайт.ру/Banderas/, то было бы круто... Подскажите что и где почитать плис... пока разбираюсь с БД
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 12.3.2011, 1:47; Ответить: ZiTosS
Сообщение #9


Banderas, я же тебе как-то давал 3 способа реализации человеко-подобных урл. Чаще всего в движках встречается роутер. Он парсит строку запроса и выделяет дальнейший путь действий. Затем отдает эти данные на обработку другому классу. Сам в эти дебри не лез, а надо бы...

Если обычный mod_rwrite в .htaccess, то все просто? При запросе _http://site.ru/account/Nikname/
RewriteEngine On

RewriteRule account/([-_0-9A-Za-z]+)/?$ userpage.php?login=$1

Что-то на подобии :rolleyes:
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 12.3.2011, 1:48; Ответить: sc2r2bey
Сообщение #10


http://www.shtogrin.com/library/web/mod_rewrite/doc/
вот отсюда скачай книгу http://phpfaq.ru/regexp


--------------------
Заметки о разработке и не только
программирую web и для we


Поблагодарили: (0)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Помогите вспомнить рекламного бота Телеграм для обмена рекламой
0 Mixatraider 725 21.2.2024, 23:42
автор: Mixatraider
Открытая тема (нет новых ответов) Помогите рещить проблему с монитором.
Почему низкое разрешение при подключении монитора через displayport?
0 Levels 1702 11.12.2020, 0:48
автор: Levels
Открытая тема (нет новых ответов) Помогите кто нибудь получить партнерку Росбанк!
7 heisenberg_mw 2340 7.8.2020, 9:28
автор: heisenberg_mw
Открытая тема (нет новых ответов) Помогите найти тему пожалуйста
7 virtas 12464 24.7.2020, 17:02
автор: -JamesSmips-
Открытая тема (нет новых ответов) Ищу волшебника Гугл-таблиц
2 Bel_Ami 2051 6.12.2019, 19:36
автор: REGNET


 



RSS Текстовая версия Сейчас: 19.4.2024, 3:36
Дизайн