2017-03-08 29 views
0

我期待在成員列表中添加一些附加功能。這裏涉及2個文件,我需要一些關於這個功能應該去哪裏的指導。需要一些關於如何在php頁面上排序/顯示MYSQL數據的指導

文件1)工作人員members.php
文件2)memberships.php

工作人員members.php(一個簡單的PHP頁面 - 需要memberships.php運作)

<div> 
<?php echo Memberships(91); ?> 
</div> 

就目前而言(並且據我所知),該頁面僅從用戶組91中獲取數組,並在屏幕上顯示其內容。


memberships.php(此文件已經很多事情與它,因爲它是鏈接到vBulletin)
-I我要去嘗試發佈,我認爲是很重要的瞭解片段中的staff-members.php被填充。讓我知道,如果你需要別的東西

$Users = $vbulletin->db->query_read(" 
      SELECT user.userid, userfield.field31 
      FROM " . TABLE_PREFIX . "user AS user 
      LEFT JOIN " . TABLE_PREFIX . "userfield AS userfield ON(userfield.userid = user.userid) 
      WHERE " . $Condition . " ORDER BY user.username ASC 

      if ($vbulletin->userinfo['userid']) 
      $Output .= '<span style="width:181px; text-align: left; display: block; float: left; font-weight: bold; color: #909090;">Username</span>'; 

     if ($vbulletin->userinfo['userid']) { 

      $Output .= '<span style="width:62px; text-align: left; display: block; float: left; font-weight: bold; color: #909090;">Posts</span>'; 
      $Output .= '<span style="width:183px; text-align: left; display: block; float: left; font-weight: bold; color: #909090;">Steam Name</span>'; 
      $Output .= '<span style="width:100px; text-align: left; display: block; float: left; font-weight: bold; color: #909090;">Join Date</span>'; 
      $Output .= '<span style="width:81px; text-align: left; display: block; float: left; font-weight: bold; color: #909090;">Last Activity</span>'; 

     } 

在上面的代碼(同樣,據我所知)這需要一個組的用戶名和用戶名(field31)和他們的用戶名排序。 然後它被添加到$輸出格式你看到上面?


我在找正確的地方嗎?我想要的功能是在staff-members.php頁面上有 帖子,Steam名稱,加入日期,上次活動可點擊鏈接。截至目前,由於SELECT語句中的ORDER BY,它只能按用戶名排序。我將如何去添加這個功能? 謝謝

回答

0

IF此功能可以作爲你所概述的隸屬函數將需要的東西增加了一個額外的參數一樣

function membership(int $usergroup) 

喜歡的東西

function membership(int $usergroup, $orderby, $direction) 

在函數內部會需要添加一些額外的代碼來解析參數,如

switch($orderby) 
{ 
    case 'posts' : 
     $orderby = 'users.posts'; 
    break; 

    case 'streamname' : 
     $orderby = 'users.streamname'; 
    break; 

    case 'lastactivity' : 
     $orderby = 'users.lastactivity'; 
    break; 

    case 'joinned' : 
     $orderby = 'users.joinedate'; 
    break; 

    default : 
     $orderby = 'users.username'; 
} 

switch ($direction) { 
    case 'DESC' : 
     $orderby .= ' DESC'; 
    break; 

    default : 
     $orderby .= ' ASC'; 
} 

名稱取決於數據庫結構等上述領域並不精確

則只需更新SQL命令通過包括ORDER BY " . $orderby

的最後一件事做的就是從URL中的順序,使更新員工成員資格。與

<?php 

$orderby = isset($_GET['order'])?:'username'; 
$direction = isset($_GET['sort']?:'asc'; 

echo membership(91, $orderby, $direction); 

?> 

PHP頁面,然後在URL中添加參數,以便http://example.com/staff-membership.php變得http://example.com/staff-membership.php?order=lastactivity&sort=DESC讓在最新的活動列表第一

注:這只是你會如何想一個粗略的指南做這個。

相關問題