Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: добавление друзей на сайте

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
xhugo
Отправлено: 28 Июля, 2011 - 23:40:35
Post Id



Посетитель


Покинул форум
Сообщений всего: 357
Дата рег-ции: Дек. 2010  


Помог: 1 раз(а)




Мне понадобилось реализовать функцию добавления друзей на сайте.
Как лучше хранить друзей добавленных у юзера? чтобы потом было легко удалять т.п.

И сразу второй вопрос, как можно реализовать например в сутки 5 друзей добавить и потом чтобы появлялась капча уже?
 
 Top
DeepVarvar Супермодератор
Отправлено: 29 Июля, 2011 - 01:05:15
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




1. Создать таблицу friends: (id, my_id, friend_id)
Тащить джойном.
Удалять по id лимит 1 (удалив у себя останетесь у друга в друзьях).
Или все (учитывая что могли приглашать как вас так и вы): where (id1 = $id1 and id2 = $id2) or (id1 = $id2 and id2 = $id1) - удалите у себя и удалитесь из друзей, тогда поле id не нужно.
Но это смотря как организуете...

2. Добавляете еще одно поле типа DATETIME и перед добавлением делаете запрос на подсчет кол-ва добавления: DATE_SUB(CURDATE(),INTERVAL 1 DAY)) < adddate.
Если результат больше 4 - кажете фигу.
 
 Top
xhugo
Отправлено: 29 Июля, 2011 - 15:03:50
Post Id



Посетитель


Покинул форум
Сообщений всего: 357
Дата рег-ции: Дек. 2010  


Помог: 1 раз(а)




например получаю все записи от друзей..
PHP:
скопировать код в буфер обмена
  1.  
  2. SELECT * FROM askf
  3. LEFT JOIN askm ON askf.f_id = askm.login_id
  4. where askf.my_id=2
  5.  

как отсортировать все по дате?

(Отредактировано автором: 29 Июля, 2011 - 17:46:41)

 
 Top
DeepVarvar Супермодератор
Отправлено: 29 Июля, 2011 - 18:55:22
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




CODE (SQL):
скопировать код в буфер обмена
  1. ... ORDER BY askm.addate DESC

Последние сверху...
(Добавление)
И таблица сообщений должна включать в себя поля: "id, from_uid, to_uid, addate" как минимум.
Какраз чтобы не было гемора доставать записи от кого и кому...
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с СУБД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB