Не согласен с выбранным ответом, по следующим причинам:
1) Не надо ничего разбивать по запятым. Нужно использовать плагин
Select2 который уже написан для этого. Он как раз присылает готовый массив, который можно вставить сразу в таблицу.
2) Нарушается принцип нормализации данных. Что если будет 500 тэгов, например с меткой "PHP" то 500 раз нужно будет хранить три байта? А если тэг длинее и записей 500?
А теперь правильный ответ:
Теги и статьи - это связка Many-To-Many, что означает,
1. Статьи храним в одной таблице (id, name, ....)
2. Теги в другой (id, name)
3. Теги и статьи ничего не знают друг о друге и полностью независимы
4. Для связки вводится третья таблица (Junction table), которая отвечает за связку ID ов. (tag_id, article_id)
5. Используем любой PHP фреймворк для упрощения работы с Many-To-Many.