Postado Maio 26, 2014 11 anos estou com uma deathlist aqui que aparece "killed", "crushed", "death", "eliminated" de acordo com o tanto de pessoas que matou o character. esta tudo funcionando certinho e sem erros, porem n tem limite de deaths para aparecer no site, se o player morreu 20x, vai aparecer todas na deathlist gostaria de limitar o numero de deaths que aparecem na deathlist para 10, seria possivel? código (deathlist): //start death list $idgracza = $player->getCustomField("id"); $players_deaths = $SQL->query('SELECT `player_deaths`.`id`, `player_deaths`.`date`, `player_deaths`.`level` FROM `player_deaths` WHERE `player_deaths`.`player_id` = '.$idgracza.' ORDER BY `date` DESC LIMIT 50'); $players_deaths_count = 0; if(!empty($players_deaths)) { foreach($players_deaths as $death) { $players_deaths_count++; if(is_int($players_deaths_count / 2)) $bgcolor = $config['site']['darkborder']; else $bgcolor = $config['site']['lightborder']; $players_rows .= '<TR BGCOLOR="'.$bgcolor.'"><TD WIDTH="125"><small>'.date("j M Y, H:i",$death['date']).'</small></TD><TD><a href="?subtopic=characters&name='.urlencode($death['name']).'"><b>'.$death['name'].'</b></a> '; $killers = $SQL->query("SELECT environment_killers.name AS monster_name, players.name AS player_name, players.deleted AS player_exists, killers.final_hit AS final_hit FROM killers LEFT JOIN environment_killers ON killers.id = environment_killers.kill_id LEFT JOIN player_killers ON killers.id = player_killers.kill_id LEFT JOIN players ON players.id = player_killers.player_id WHERE killers.death_id = '".$death['id']."' ORDER BY player_killers.player_id DESC, killers.id ASC")->fetchAll(); $i = 0; //Properly Counting - 4 SQL Queries $getDeathlist = $SQL->query("SELECT player_killers.kill_id from killers,player_killers where killers.death_id = ".$death['id']." and player_killers.kill_id = killers.id")->fetchAll(); $getDeathlist1 = $SQL->query("SELECT id, death_id from killers where final_hit = 1 and death_id = ".$death['id']); $z = 0; $p = 0; foreach($getDeathlist1 as $Deathlist) { $count_m = $SQL->query("SELECT * from environment_killers where kill_id = ".$Deathlist['id'])->fetchAll(); } $z = count($count_m); $p = count($getDeathlist); $count = $z + $p; //Displaying //Killed By Players foreach($killers as $killer) { $i++; if($killer['player_name'] != "") { if($i == 1) { if ($count <= 4){ $players_rows .= "Killed at level <b>".$death['level']."</b> by "; } elseif ($count > 4 and $count < 10){ $players_rows .= "Slain at level <b>".$death['level']."</b> by "; } elseif ($count > 9 and $count < 15){ $players_rows .= "Crushed at level <b>".$death['level']."</b> by "; } elseif ($count > 14){ $players_rows .= "Eliminated at level <b>".$death['level']."</b> by "; } } elseif($i == $count) $players_rows .= " and "; else{ $players_rows .= ", "; } if($killer['monster_name'] != "") $players_rows .= $killer['monster_name']." summoned by "; if($killer['player_exists'] == 0) $players_rows .= "<a href=\"index.php?subtopic=characters&name=".urlencode($killer['player_name'])."\">"; $players_rows .= $killer['player_name']; if($killer['player_exists'] == 0) $players_rows .= "</a>"; } else //Killed By Monster (only final hit) { if ($killer['final_hit'] == 1) { if ($i == 1) $players_rows .= "Died at level <b>".$death['level']."</b> by "; else $players_rows .= " and "; $players_rows .= $killer['monster_name']; } } } $players_rows .= '.</TD></TR>'; } } if(!$players_deaths_count == 0) { $main_content .= '<br><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR="'.$config['site']['vdarkborder'].'"><TD CLASS=white><B>Character Deaths</B></TD></TR></TABLE><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=2 WIDTH=100%>'.$players_rows.'</TABLE>'; } //end
Postado Maio 26, 2014 11 anos Autor arrumei ja pessoal, para quem estiver com a mesma duvida que eu estava, basta apenas trocar na terceira linha do script o seguinte termo: DESC LIMIT 50'); troque o 50 no final, pelo numero de deaths que vc quer que apareça na deathlist do characters.php Editado Maio 26, 2014 11 anos por dominicky (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.