如何进行自定义排序? (按在线/离线状态排序)

时间:2013-07-15 09:42:41

标签: php jquery html css vbulletin

我对HTML,PHP和其他新手都很陌生,但我有一个基本的理解,我意识到有明显的功能,按数字/字母顺序排序。然而,我想要的功能我真的找不到任何东西,也没有搜索正确的术语来找到我正在寻找的指南

基本上我有一个自定义的成员流页面,每个流上面是文本和图像流状态:在线/离线,此功能在人流时将100%工作,将从在线更改离线

然而,所有流都混乱,在网页底部或随机位置找到在线流

我希望它能将当前在线的流引入顶层,甚至可能吗?

<?php

$channelName = htmlspecialchars($_GET['channel'], ENT_QUOTES);

$clientId = '';             // Register your application and get a client ID at http://www.twitch.tv/settings?section=applications
$online = 'online.png';     // Set online image here
$offline = 'offline.png';   // Set offline image here
$json_array = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams/'.strtolower($channelName).'?client_id='.$clientId), true);

if ($json_array['stream'] != NULL) {
    $channelTitle = $json_array['stream']['channel']['display_name'];
    $streamTitle = $json_array['stream']['channel']['status'];
    $currentGame = $json_array['stream']['channel']['game'];

    echo "$channelTitle is <img src='$online' alt='Online' /> playing $currentGame";
} else {
    echo "$channelName is <img src='$offline' alt='Offline' />";
}

?>

我正在使用它来提取流状态&amp;

<A NAME="SADMAN"><center><font size="3" color="red"><span style="color:#FFFFFF">Konvict</span> - Sadmanwhosane - <span style="color:#CEE3F6">Stream status:</span> <img src="http://teamewix.com/stream.php?streamuser=sadmanwhosane87"></font>

我正在做什么来展示它

2 个答案:

答案 0 :(得分:1)

使用JQuery表格排序器:

链接为here

答案 1 :(得分:0)

所以我猜这个页面不爽快?然后使用ajax获取最新数据,然后更新页面的详细信息。

链接到jQuery ajax(用于异步获取数据)

链接到jQuery html(用于使用新数据更新html)

如果你熟悉php和jquery那么这将是一个简单的任务,链接将引导你的方式。但如果你不这样,那就是另一个故事。古德勒克!


修改

我的上述答案是异步的,不涉及页面刷新。

您有一个在线和离线用户的数据库吗?您可以使用jQuery ajax来查找在线和离线用户。然后当你有数据。您可以使用jQuery html更改页面元素。

如果您只是想在页面刷新期间根据其状态定位它们,那么您可以使用基本phphtml。使用arrays。准确地说是3个数组。

Array1 - 所有团队

Array2 - 在线团队

Array3 - 离线团队

您只需从Array1获取所有在线团队,并将其传输到Array2,并将所有离线团队从Array1传输到Array3。

然后首先回应来自Array2的团队。然后Array3最后。 但这又是页面刷新。如果您不希望任何页面刷新,请按照我的第一个答案。


<强> EDIT2

您的代码:

if ($json_array['stream'] != NULL) {
    $channelTitle = $json_array['stream']['channel']['display_name'];
    $streamTitle = $json_array['stream']['channel']['status'];
    $currentGame = $json_array['stream']['channel']['game'];

    echo "$channelTitle is <img src='$online' alt='Online' /> playing $currentGame";
} else {
    echo "$channelName is <img src='$offline' alt='Offline' />";
}

到此代码:

if ($json_array['stream'] != NULL) {
    $channelTitle = $json_array['stream']['channel']['display_name'];
    $streamTitle = $json_array['stream']['channel']['status'];
    $currentGame = $json_array['stream']['channel']['game'];

    array_push($OnlineTitleArray,$channelTitle);
    array_push($OnlineCurrentGameArray,$currentGame);

} else {
    array_push($OfflineArray,$channelName);
}

foreach($OnlineTitleArray as $key => $val){
    echo $val.' is <img src='.$online.' alt=\'Online\' /> playing  '.$OnlineCurrentGameArray[$key];
}

foreach($OfflineArray as $key => $val){
    echo $channelName.' is <img src='.$offline.' alt="Offline" />';
}

因此,您需要数组使用array_push然后foreach来显示数据以显示数据。希望这可以帮助。如果你觉得有用,请检查一下