이 글에 구현된 기능:
모바일 팔로어 페이지 개발
모바일 팬 페이지 개발
자신의 공간에서 보이는 팔로어 목록을 보면 내가 팔로우했음을 알 수 있습니다
알아두세요 자신이 다른 사람의 팔로워를 볼 수 있도록 등록할 때 내가 팔로우하는 사용자는 팔로우로 표시되고 팔로우하지 않는 사용자는 팔로우로 표시됩니다
모바일 페이지 표시 방법을 PHP 파일로 풀어보세요
discus에서는 모바일 측에 팬이나 팔로어가 없으므로 개발해야 합니다. 다음은 개발 과정이다.
Discuz는 PC 버전에서 듣기 및 청중 기능을 제공합니다. 아래와 같이 home.php?mod=follow&do=follower 주소는 PC의 해당 팬 페이지
그러면 PHP 파일 source/module/home/home_follow.php 을 추적할 수 있습니다. . 이 파일에서는 이름 뒤에 오는 이름만 기록하면 됩니다. 둘 중 하나는 팔로우를 의미하고 다른 하나는 팬을 의미합니다
그런 다음 discuz의 액세스 메커니즘에 따라 템플릿으로 이동하여 follow_follower.html 파일을 찾습니다. 하지만 템플릿에서 follow로 시작하는 유일한 파일은
파일 source/module/home/home_follow.php로 이동하고 끝까지 스크롤하여 로드된 템플릿을 확인하는 것으로 나타났습니다. 여기에서 로드된 템플릿이 위에서 본 follow_feed.html 파일임을 확인할 수 있습니다.
그런 다음 template/default/home/follow_feed.htm 파일로 이동합니다. 554번째 줄 근처에 두 개의 친숙한 모듈인 follower와 Following
을 볼 수 있습니다. 여기 있으니 테스트 코드를 작성해 보겠습니다.
테스트 결과 이 페이지가 팔로우 페이지와 팬 페이지가 로드된 것으로 확인되었습니다.
위 테스트에서 요청한 주소는 /home.php?mod=follow&do=follower이지만 로드된 html 파일은 template/default/home/입니다. follow_feed.htm . 즉, dsicuz에서 요청한 주소와 일치하지 않는 파일을 로드해야 하는 경우 템플릿 기능을 사용하여 로드해야 합니다.
그럼 모바일 follow_follower 파일을 직접 작성해 보겠습니다.
다음은 브라우저를 모바일 액세스 모드로 조정하세요
위는 PHP에서 두 번째 팔로우 페이지와 팬 페이지를 로드하는 방법입니다.
팬 페이지를 개발하고 페이지를 팔로우하고 데이터 액세스를 구현합니다
아래 사진은 카카 팔로우 페이지 효과 개발
페이지 작성이 끝나면 데이터 도킹을 구현해야 합니다. 계속해서 template/default/home/follow_feed.htm 파일로 돌아갑니다. 사용된 데이터가 목록이고 변수 퓨저가 루프
discus 데이터베이스 사전을 열고 관심이 상호를 사용하고 있는지 확인할 수 있습니다. 이 필드는
상호 필드에 따라 팔로우 및 팔로우 표시 여부를 제어합니다
자신의 공간에 입장하면 팔로우 목록의 모든 팔로우 목록이 표시됩니다. 판단 조건은 $_G[uid] = = $_GET[uid], 상호>=0 을 사용할 수 있는 경우입니다
팔로잉 목록을 보기 위해 다른 사람의 공간에 들어갈 때 내가 팔로우하는 사용자가 필요한 경우 다음과 같이 표시되고, 그렇지 않으면 다음과 같이 표시될 수 있습니다. 여기서 판단 조건은 $_G[uid ] != $_GET[uid],mutual==-1 또는mutual==1이면 충분합니다. 여기에 상호=-1 플래그가 있는 이유는 무엇입니까? 데이터베이스 사전에는 이 로고가 없지만 실제 테스트 결과에는 있는 것으로 나타났습니다. Kaka도 소스 코드를 보고 판단했습니다. 이 판단을 먼저 알아두세요. mod=spacecp&ac=follow&op=del&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2. 모든 사용자 ID는 followuid
팬 목록은 매우 간단합니다. -1과 1을 사용하여 직접 판단하세요
즉, 상호 필드의 값이 0과 1이므로 판단할 수 있는 것은 이것뿐입니다. 당신은 자신의 공간에서 다음과 팬 목록을 볼 때 사용할 수 있습니다. 다른 사용자의 팬 및 관심 목록을 입력하면 상호 값이 -1인 필드가 생성됩니다
즉, 다른 사용자를 입력하고 내가 팔로우한 사용자가 있으면 상호 값이 -1이 됩니다
구현 코드
// 粉丝模板 <p class="follow_manage"> <!--{if $fuser[mutual] == -1 || $fuser[mutual] == 1}--> <a id="a_followmod_{$fuser['uid']}" href="home.php?mod=spacecp&ac=follow&op=del&hash={FORMHASH}&fuid=$fuser['uid']&mobile=2" class="flw_btn_fo dialog"> <i class="iconfont icon-like_fill rq"></i> <font class="grey">已关注</font> </a> <!--{else}--> <a id="a_followmod_{$fuser['uid']}" href="home.php?mod=spacecp&ac=follow&op=add&hash={FORMHASH}&fuid=$fuser['uid']&mobile=2" class="flw_btn_fo dialog"> <i class="iconfont icon-like"></i> <font class="grey">关注</font> </a> <!--{/if}--> </p> // 关注列表模板 <p class="follow_manage"> <!--{if $_G[uid] != $_GET[uid]}--> <!--{if $fuser[mutual] == -1 || $fuser[mutual] == 1}--> <a id="a_followmod_{$fuser['followuid']}" href="home.php?mod=spacecp&ac=follow&op=del&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2" class="flw_btn_fo dialog"> <i class="iconfont icon-like_fill rq"></i> <font class="grey">已关注</font> </a> <!--{else}--> <a id="a_followmod_{$fuser['followuid']}" href="home.php?mod=spacecp&ac=follow&op=add&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2" class="flw_btn_fo dialog"> <i class="iconfont icon-like"></i> <font class="grey">关注</font> </a> <!--{/if}--> <!--{else}--> <!--{if $fuser[mutual] == 0 || $fuser[mutual] == 1}--> <a id="a_followmod_{$fuser['followuid']}" href="home.php?mod=spacecp&ac=follow&op=del&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2" class="flw_btn_fo dialog"> <i class="iconfont icon-like_fill rq"></i> <font class="grey">已关注</font> </a> <!--{else}--> <a id="a_followmod_{$fuser['followuid']}" href="home.php?mod=spacecp&ac=follow&op=add&hash={FORMHASH}&fuid=$fuser['followuid']&mobile=2" class="flw_btn_fo dialog"> <i class="iconfont icon-like"></i> <font class="grey">关注</font> </a> <!--{/if}--> <!--{/if}--> </p>
이제 사용자 A, 사용자 B, 사용자 C
사용자 A가 사용자 C를 팔로우합니다
그런 다음 사용자 B가 입장합니다 사용자 A의 공간 팔로우 목록에서 사용자 C를 볼 수 있습니다
이때 사용자 B가 사용자 C를 팔로우했다면 이때 팔로우 버튼이 팔로우되며 이때 상호 가치는 be -1 (이런 상황은 다른 사람의 팔로우 목록에 가서 사용자를 확인하는 것입니다. 팔로우한 사람이 있으면 팔로우로 표시되며 상호 가치는 -1입니다)
이때 사용자 B는 자신의 사용자 공간으로 돌아와 팔로우 목록을 확인합니다. 사용자 C가 자신의 목록에 있는 것으로 표시되지만 이때 상호 값은 0입니다. 그러나 사용자 C도 사용자 B를 팔로우하면 상호 값은 1
그래서 사용자는 사용자 B를 자신의 공간의 팔로우 리스트로 간주합니다. 상호 값이 0과 1인지 확인합니다. 사용자 B가 사용자 A의 감시 목록을 보러 갈 때 -1과 1의 상호 값을 사용하여 판단
팬의 논리적 처리를 설명하는 그림을 그려보세요
현재 사용자 A를 사용하고 있는 사용자 B, 유저 C
유저 A가 유저 C를 팔로우할 때 유저 C의 팬 리스트에는 유저 A
가 포함됩니다. 이때 유저 B는 유저 C의 팬 리스트를 방문하여 유저 A만 있게 됩니다. 이때 유저 A의 팔로우는 status 역시 언팔로우 상태이고 상호값은 0
사용자 A도 사용자 B를 팔로우하면 사용자 B는 사용자 C의 팬 목록에서 사용자 A의 상태를 확인하고 상호 값도 언팔로우됩니다. 하지만 사용자 B가 사용자 A를 팔로우한 후 이때 사용자 B는 사용자 C의 팬 목록에서 사용자 A의 상태를 확인하며 이는 사용자 A를 팔로우했음을 의미하며 상호 가치는 1입니다. 서로 팔로우
그런데 A가 B를 팔로우하지 않을 때
이렇게 B가 C의 팬리스트에서 A의 상태가 언팔로우 상태인 것을 보면 B가 A를 팔로우하면 그 상태가 팔로우가 되고, 상호 값이 -1
이므로 팬 목록에서는 상호 값이 -1 또는 1일 때만 다음 상태이고 나머지는 팔로우 안 함 상태
요약
이라고 판단합니다.위 내용은 Discuz 모바일 단말기 2차 출시 : 팔로우 및 팬 페이지 및 팔로우 상태 처리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!