Хочу сделать раздел закладки, в котором будут отображаться видео, которые добавил пользователь, но чет думаю-думаю как это сделать и захожу в тупик.
Вообщем суть такова, возле видео будет иконка, которая по нажатию будет добавлять это видео в закладки.
На сайте существуют сессии. Как с помощью сессии отобразить это видео в закладках?
Если такой способ невозможен, то вот еще один. Думал сделать такое с помощью бд.
Есть авторизация и когда происходит авторизация, лог и user_id(номер id из бд) записываются в $_SESSION.
И когда пользователь будет нажимать на иконку для добавления в закладки, то в бд будет записать id видео для этого пользователя, и затем уже просто вывести это видео в раздел закладки. Но проблема в том что пользователь же не добавит только одно видео в закладки, если их там будет 100,200,300. то и соответственно и полей id для видео будет тоже много.
И еще один такой вопрос. Работа с куками, это также как и сессиями? т.е. можно к примеру login записать в куки и хранить там, также как и в сессии?
Какой способ лучше? и какой возможен, а лучше помогите с первым(если это возможно).
Но проблема в том что пользователь же не добавит только одно видео в закладки, если их там будет 100,200,300. то и соответственно и полей id для видео будет тоже много.
Изучайте представление связей в реляционных БД. Ключевые слова: "One To Many", "Many To Many".
По поводу всего остального могу только посоветовать учиться разбивать задачи на подзадачи. У вас в вопросе указано минимум две задачи: хранение и получение данных текущего пользователя, хранение списка избранных видео у пользователя.
Вообщем суть такова, возле видео будет иконка, которая по нажатию будет добавлять это видео в закладки.
ajax скрипт с запросом на сервер о добавлении id этого видео в избранное.
Как с помощью сессии отобразить это видео в закладках?
ни сессия ни куки не подходят для хранения избранного. Таблица со связями юзер_ид - видео_ид.
т.е. можно к примеру login записать в куки и хранить там, также как и в сессии?
не так же, сессия хранится на сервере, из браузера к ее данным доступа нет. Куки хранятся на локальной машине, к ним есть доступ как физически, через файловую систему, так и через js в браузере.
Вы сказали что сессии и cookies не подходят для хранения избранного, а если по нажатию на кнопку чтобы добавить видео в раздел Закладки записывалась id видео в сессию и затем из этой сессии сделать SQL запрос который бы выводил видео у которого id равняется этой сессии а, так будет работать?
Хотите сделать нормальные закладки, вот Вам совет:
1. Отношение "один-ко-многим": userID к videoID
2. Таблица закладок с полями: id, videoID, userID, Added [timestamp], viewedCount, userTags, viewed (bool)
3. Включайте Redis для увеличения скорости работы с базой данных.
Так это даже легче сделать, как я предложил, не создавать ни какой таблице, а там просто записывать id в сессию и все. А почему это каламбур? это же вроде просто, и для чего сессии созданы? для авторизации? что случится если я сессию использую?