-2

私はHTML、PHPなどにかなり慣れていませんが、基本的な理解はあります。数値/アルファベットによる順序付けの機能があることは明らかです。しかし、私が本当に欲しい機能について何も見つけることができず、探しているもののガイドを見つけるために適切な用語を検索することもできません

基本的に私は一族のメンバーのためのカスタム ストリーム ページを持っています。各ストリームの上にはテキストと画像のストリーム ステータスがあります: online/offline、この機能は 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' />";
}

?>

ストリームステータスを取得するために使用しているものです &

<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>

それを示すためにすべての私がやっている

4

2 に答える 2

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を使用してデータを配置する配列が必要です。お役に立てれば。役立つと思われる場合は、これを確認してください

于 2013-07-15T10:05:01.127 に答える