Top Kockák [PHP]

Indította giross, 2010 augusztus 24, 02:35:20 DÉLELŐTT

Előző téma - Következő téma

giross

Szeretnék valakit megkérni , hogy linkeljen egy olyan php-t, ami kiirja a top "kockák a szerveren" tudjátok, amikor a legtöbb online játékosokat mondjuk top15 legtöbbet fent tartózkodókat kiirja egy listára és hogy mennyi időt töltött el fent. Régebben volt már ilyen, csak takarításkor törölték. Előre is köszönöm annak , aki fáradozik , és feltölti nekem.

$0undX

pradox web acc manager-ében benne van, vedd ki onnan.

DoomKiller

<?php
        $host 
"localhost";
        
$user "root";
        
$pass "";
               
$characters "characters" //Karakter adatbázis neve.
$con mysql_connect($host,$user,$pass) or die (mysql_error());

function 
getTime($total)
{
  
$day = (int)($total/86400);
  
$total $total - ($day*86400);
  
$hour = (int)($total/3600);
  
$total $total - ($hour*3600);
  
$minute = (int)($total/60);

  
$time $day." nap ".$hour." óra ".$minute." perc";
  return 
$time;
}
$query mysql_query("SELECT `name`, `class`, `race`, `totaltime` FROM `".$characters."`.`characters` ORDER BY `totaltime`") or die (mysql_error());

while(
$result mysql_fetch_array($query))
{
       
//Ide jön a táblázatod. Játékidő kiírása: echo getTime($result['totaltime']);
}
?>


Az egészet nem volt kedven ötödszörre is megírni, remélem megérted. De szerintem ezzel eltudsz indulni :)

$0undX

#3
na ha Doom adott 1 k

giross

#4
Nagyon sz

ToMa3757


$0undX

#6

giross

Köszönöm, már működik. Kérlek, még annyit szeretnék kérni, hogy csak az első 10-et irja, és a legtöbbet játszó legyen legfelü ::) Köszönöm szépen!

$0undX

az új változatban már így van szerintem, nemde?  ;)

DoomKiller

Nem :)


$query = mysql_query("SELECT `name`, `class`, `race`, `totaltime` FROM `".$characters."`.`characters` ORDER BY `totaltime` DESC LIMIT 10") or die (mysql_error());


így.

$0undX

nem tudom láttad-e de az új verzióban beraktam ezt a while-be:
if($i+1 == $hanyember)
break;

vitya

#11
Sziasztok ez egy toponline kiíró pradox accmanageréhez, mert ilyet én benne nem találtam :D

?>

</table>

<br />
<table class="body6" cellspacing="0" cellpadding="0">
 <tr class="body6-top">
   <td colspan="7">
    Online
   </td>
 </tr>
 <tr>
   <td width="60">Helyezés</td>
<td>Név</td>
<td>Online</td>
<td>Faj</td>
<td>Kaszt</td>
<td>Szint</td>
<td>Státusz</td>
 </tr>

<?php

// Karakterek lekérdezése
$query_toponline db_query("SELECT name, race, class, gender, level, totaltime, online FROM characters ORDER BY totaltime DESC LIMIT 10");

$top_rank 1;

// Fajok és kasztok átalakítása képpé
while($results_toponline mysqli_fetch_array($query_toponline)){

 switch($results_toponline["online"]){
 
 case 0:
 $results_toponline_status '<font color="red">Offline</font>';
 break;
 
 case 1:
 $results_toponline_status '<font color="green">Online</font>';
 break;
 
 default:
 $results_toponline_status '???';
 break;
 
 }

 $results_toponline_race '<img src="images/'.$results_toponline["race"].'-'.$results_toponline["gender"].'.gif" alt="" />';
 $results_toponline_class '<img src="images/'.$results_toponline["class"].'.gif" alt="" />';

echo '<tr><td><b>'.$top_rank++.'.</b></td><td><b>'.$results_toponline["name"].'</b></td><td class="top-rank"><b>'.$results_toponline["totaltime"].'</b></td><td><b>'.$results_toponline_race.'</b></td><td><b>'.$results_toponline_class .'</b></td><td><b>'.$results_toponline["level"].'</b></td><td><b>'.$results_toponline_status.'</b></td>';

}

?>


</table>


Ezzel csak egy kis probléma van a számértéket írja ki amit a totaltime-ból kap. Ehhez szeretném a segítségeteket kérni, hogy mint a fentebb lévő verziókban nap, óra, perc-ként írja ki.
Előre is köszönöm a segítséget. Vitya

ui.:Egyébként nekem ha azt szeretném használni amit írtatok csak 0 nap 0 óra 0 percet ír.

DoomKiller

Üdv,

Ezt a sort:

echo '<tr><td><b>'.$top_rank++.'.</b></td><td><b>'.$results_toponline["name"].'</b></td><td class="top-rank"><b>'.$results_toponline["totaltime"].'</b></td><td><b>'.$results_toponline_race.'</b></td><td><b>'.$results_toponline_class .'</b></td><td><b>'.$results_toponline["level"].'</b></td><td><b>'.$results_toponline_status.'</b></td>';


Cseréld le erre:

echo '<tr><td><b>'.$top_rank++.'.</b></td><td><b>'.$results_toponline["name"].'</b></td><td class="top-rank"><b>'.getTime($results_toponline["totaltime"]).'</b></td><td><b>'.$results_toponline_race.'</b></td><td><b>'.$results_toponline_class .'</b></td><td><b>'.$results_toponline["level"].'</b></td><td><b>'.$results_toponline_status.'</b></td>';

Valamint a file elejére szúrd be a function getTime();-t is, ami fentebb le van írva :D

vitya

Köszi a segítséget hibátlanul megy.

Serenity

Hali. Valaki nem tudná átírni ezt a kódot úgy, hogy csak a Playereket és VIP-eket mutassa meg? Légyszi csinálja meg valaki. Biztosan nem tart semeddig de nekem mégsem sikerül.

Powered by EzPortal