Как разбить данные из столбца?

Здравствуйте! Вопрос такой.
Есть таблица "achievements", в которой лежать данные Достижения (id, img_url, description)
Так же есть столбец "achievements" в таблице "users", в которой мне надо сделать следующее:
Сделать так, что бы в поле были данные о полученных ачивках. Т.е. оно должно вот так разбиваться
0,0,0,0,0 (Порядковый номер каждого числа - номер ачивки. Если 0, то ачивки нету, а если 1, то ачивка есть)
Как это можно реализовать?
И как потом сделать PHP обработчик, что бы он смотрел, какие ачивки есть, а каких нет, и выводил все это.
И как потом в дальнейшем вносить изменения через php в такое поле?
  • Вопрос задан
  • 204 просмотра
Решения вопроса 2
Stalker_RED
@Stalker_RED
Нормальная форма? Не, не слышал.
по хорошему это делается связью многие ко многим. Таблица со списком юзеров, таблица со списком ачивок и таблица типа "user_has_acievement", например.
id | user_id | achievement_id

Если уж загоняться, то по крутому - можно в биты упаковать!
Если в поле 0 - значит ачивок вообще нет.
Если в поле 5 (00000101) значит есть первая и третья.
Если там 345 (101011001) значит первая, четвертая, пятая, седьмая и восьмая. Ну и так далее, до 64 бит. Ну или другой тип данных какой-то использовать.
Ответ написан
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Вынесите в таблицу связей, а то это очень криво.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы