|
|
|
| Пример.
есть 2 разные страницы пользователей (страница user.php?id1 и user.php?id2)
и 1 пользователь находится на странице второго пользователя и по нажатию кнопки на странице должно отправится второму пользователю на странице (agree.php)
примерно такой код
<div><a href='setagree.php?yes'>присоединится</a> <a href='setagree.php?no'>отклонить</a></div>
обрабатывает это setagree.php
вот я подумал есть какая нить функция на подобии
mysql_query ("INSERT INTO
к примеру так (если человек нажал кнопку пригласить) mysql_query ("INSERT INTO %s ) ,$set
$set = print <<<HERE
<div><a href='setagree.php?yes'>присоединится</a> <a href='setagree.php?no'>отклонить</a></div>
>>>HERE
что есть на подобии этого? | |
|
|
|
|
|
|
|
для: kvins
(04.03.2011 в 17:32)
| | попробуйте объяснить чего хотите более связно | |
|
|
|
|
|
|
|
для: kvins
(04.03.2011 в 17:32)
| | Действительно не очень понятно. | |
|
|
|
|
|
|
|
для: cheops
(04.03.2011 в 17:58)
| | соц сеть вконтакте при добавлении пользователя человеку приходит табличка чтобы подтвердить
(такое подтверждение мне надо) так же для каждого пользователя на которого нажали | |
|
|
|
|
|
|
|
для: kvins
(04.03.2011 в 18:16)
| | Создайте таблицу в которую будете забивать ид пользователя и ид всех, кто отправил ему приглашение. А потом просто проверять при входе на страницу.
Как то так наверно. | |
|
|
|
|
|
|
|
для: kvins
(04.03.2011 в 18:16)
| | Обычно для этого заводят таблицу базы данных, в которую помещают id пользователя предлагающего себя в друзья, id пользователя, которому предлагается друг и статус записи. Перед отображением страницы пользователя, проверяется эта таблица на предмет: нет ли для текущего пользователя новых записей, если есть - выводится предложение о том, добавить друга или отклонить предложение. Если человек соглашается или отклоняет предложение - мы соответственно добавляем или не добавляем друга (в таблицу связей друзей), при этом меняем статус записи в таблице предложений на "отклонен" или "принят". При обновлении страницы первого пользователя - выводим ему сообщение о том, что его запрос отклонен или принят, при этом уничтожаем запись в таблице предложений.
Все формы, сообщения регламентируются наличием записи в таблице и её статусом. | |
|
|
|
|
|
|
|
для: cheops
(04.03.2011 в 18:23)
| | То же самое, по сути, что и я предложил, не так ли?:) | |
|
|
|
|
|
|
|
для: alexander95
(04.03.2011 в 18:31)
| | Конечно, я просто ответа не видел, когда отвечал, да и все-равно бы наверное стал писать свой ответ. Много одинаковых ответов - это не плохо и всегда на форуме приветствовалось, так как сюда многие ходят учиться, тренироваться, восстанавливать программисткую форму. А если только читать, не отвечая, то эффективность очень маленькая. | |
|
|
|
|
|
|
|
для: cheops
(04.03.2011 в 18:49)
| | ...так как сюда многие ходят учиться, тренироваться, восстанавливать программистскую форму.
Совершенно согласен:) | |
|
|
|
|
|
|
|
для: kvins
(04.03.2011 в 17:32)
| | Возможно просто сделать отдельную таблицу (test_friend), где будет поля. 1 поле - id пользователя, 2 - id того, кто тебя пригласил, 3 - состояние (0 неопределенно, 1 - пригласил, 2 - отклонил). И, соответственно, строить ссылку (nam.php?id_test_friend=val&status=1).
Типа того.
Не знаю, может вам что-то другое нужно. | |
|
|
|
|
|
|
|
для: lElectroHardl
(04.03.2011 в 18:37)
| | А зачем вообще нужно состояние? Не понимаю. По моему, можно при добавлении друга просто удалять ид добавленного и то же самое при отклонении. | |
|
|
|
|
|
|
|
для: alexander95
(04.03.2011 в 19:09)
| | Приглашающему будет не понятно, отклонили его просьбу или это система глюкнула и приглашаемый этого приглашения даже в глаза не видел... | |
|
|
|
|
|
|
|
для: cheops
(04.03.2011 в 19:12)
| | Ну тот же Вконтакте не оповещает при отклонении/добавлении.
Правда, он использует что - то похожее для того чтобы заявка на добавление не отправлялась повторно.
В общем, согласен. Но это только в том случае если записи из этой таблицы заявок не будут удаляться. Все же мой вариант мне кажется более удобным...:) | |
|
|
|
|
|
|
|
для: alexander95
(04.03.2011 в 19:09)
| | А зачем вообще нужно состояние? Не понимаю. По моему, можно при добавлении друга просто удалять ид добавленного и то же самое при отклонении.
Upd
И хранить id можно просто перечислением, ну, например, через запятую. Правда, тогда придется перезаписывать это поле, но ведь это не слишком ресурсоемко? | |
|
|
|
|
|
|
|
для: alexander95
(04.03.2011 в 19:16)
| | спс за сообщения , извините что не участвовал просто отходил на время ,а когда пришел тут уже стока написано
ща попробую , если чета не понятно будет опять писать =) | |
|
|
|
|
|
|
|
для: kvins
(04.03.2011 в 19:43)
| | Удачи ;) | |
|
|
|
|
|
|
|
для: alexander95
(04.03.2011 в 19:16)
| | И хранить id можно просто перечислением, ну, например, через запятую. Правда, тогда придется перезаписывать это поле, но ведь это не слишком ресурсоемко?
прочитал это еще раз и вспомнил еще важную деталь, а напомнили мне эти строчки.
как насчет того когда он примет его в друзья =) ведь врядли у каждого будет тока 1 друг , их же надо где то перечислять. надо еще 1 таблицу создавать ? | |
|
|
|
|
|
|
|
для: kvins
(04.03.2011 в 20:02)
| | Ладно. Тогда можно сделать как предлагает хеопс. А можно разделять приглашения, например, запятой, а уже добавленных друзей чем либо другим, символом '#', например
это уж на Ваше усмотрение:) | |
|
|
|
|
|
|
|
для: alexander95
(04.03.2011 в 20:08)
| | мы соответственно добавляем или не добавляем друга (в таблицу связей друзей), при этом меняем статус
так он не рассказал как построить таблицу связей , он тока упомянул о ней =)
понятно тока как кидать приглашение | |
|
|
|
|
|
|
|
для: kvins
(04.03.2011 в 20:16)
| | Ну у вас же есть таблица всех пользователей? Вот в нее добавьте столбец с друзьями и приглашениями (или два столбца с соответствующими названиями), при отправлении запроса записывается id отправителя в нужный столбец. На каждой странице должен быть скрипт, проверяющий, есть ли новые приглашения. Если есть, то выводится, что есть:) | |
|
|
|
|
|
|
|
для: alexander95
(04.03.2011 в 20:26)
| | да уже не в приглашении дело , я не пойму где хранить всех друзей
Ну у вас же есть таблица всех пользователей?
да есть но если туда добавить друга то туда влезет тока 1,
в таблице пользователя в его строку можно только 1 раз вставить , то я не понимаю как все id туда запихнуть
или я вас не понял =) | |
|
|
|
|
|
|
|
для: kvins
(04.03.2011 в 20:53)
| | Я имел ввиду что при появлении заявки надо дописывать в БД, но это уже не ко мне, у меня с SQL плохо...:) | |
|
|
|
|
|
|
|
для: alexander95
(04.03.2011 в 21:00)
| | Вроде как что то вроде этого:
1. Записываете в переменную текущее содержание ячейки
2. Конкатенацией прибавляете ид добавляющего
3. Добавляете в БД как то так: insert into ... values(...)
с удалением пользователя/заявки то же самое, только там надо будет уже вырезать ненужный ид.
Но это все конечно индусский код, наверняка все можно сделать проще:) | |
|
|
|
|
|
|
|
для: alexander95
(04.03.2011 в 21:06)
| | 2. Конкатенацией прибавляете ид добавляющего
можешь показать пример ?? а то никогда не использовал такое =)
или сылочку дать об этом | |
|
|
|
|
|
|
|
для: kvins
(04.03.2011 в 23:53)
| | $u_id=$_COOKIE['uid'];
$add_id=$_POST['id'];
$all_u_friends=mysql_query('select %columnName% from %tableName% where id='.$u_id);
$new=$all_u_friends.", ".$add_id;
mysql_query('insert into %tableName% values($u_id, ..., $new)');
echo "your request sended";
как то так, но, повторяю, лучше у других спросить:) | |
|
|
|