Следуйте члену системы php - PullRequest
1 голос
/ 26 мая 2011

Я хотел бы создать систему «следуй за пользователем», используя php и mysql.Я разрабатываю веб-сайт, которому требуются эти функции, и хотел бы получить некоторую помощь по кодированию сценариев и структуре таблиц - я застрял.

Я бы хотел, чтобы user1 мог "следовать" за user2 безнеобходимость подтвердить дружбу.После того, как пользователь1 нажмет кнопку «подписаться», я хочу, чтобы пользователю user2 было отправлено уведомление о том, что пользователь user1 добавил их в друзья.это только первая часть того, что я хотел бы, чтобы функциональность моего сайта была, но это очень сильно мне поможет.

1 Ответ

3 голосов
/ 26 мая 2011

Упрощенный ответ на очень «низком уровне» (в смысле очень простого - и поэтому не проверенного в полевых условиях; p)

таблица user_following структура может иметь вид:

  • followerUserID - pk;userID пользователя, который хочет следовать followingUserID
  • followUserID - pk;userID пользователя, за которым будет следовать followerUserID
  • отметка времени - может использоваться для отслеживания, когда followerUserID добавлен followingUserID, за которым следует его

php код (какупомянуто: ОЧЕНЬ упрощенно)

<?php
// ...

class UserRelation extends User {
  /**
   * follow userID $userID and tell $userID that someone follows him
   *
   * @param int $userID
   * @return void
   **/
  public function followUserID($userID) {
    // send a message that $this->userID follows $userID
    Message::sendFollowUserNotification($this->userID, $userID);

    // add to database
    $this->setFollowingUser($userID);
  }

  /**
   * adds it to database
   *
   * @param int $userID
   * @return void
   **/
  private function setFollowingUser($userID) {
    // write to database
    Database::executeQuery("INSERT INTO user_following(followerUserID, followingUserID) VALUES (". $this->userID .", ". $userID .");
  }
}

// ...
?>

Будьте более конкретны, если вам нужна дополнительная помощь - я просто могу показать вам базовый пример.Тема слишком сложна, чтобы ее можно было объяснить за 10 минут.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...