Guild Wars stat tracking The idea behind this is to track multiple characters individual stats as well as account stats.
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
 
 
 
 
 

60 rader
2.9 KiB

  1. <?php
  2. if (isset($_SESSION['userid'])){
  3. echo '<table border="1"><caption>Titles progress for <b>' . $_SESSION['prefcharname'] . '</b></caption>';
  4. echo '<tr><th>Title</th><th>Title Rank</th><th>Title Points</th><th>Current Rank</th><th>Points Remaining</th><th>Max Title %</th><th>Next Rank</th></tr>';
  5. if ($_SESSION['prefcharid'] == "0") {
  6. // $gcc = Get Current Character stats
  7. $gcc = $con->prepare("SELECT * FROM gwstats WHERE charid = 0 AND accid = ? AND userid = ? ORDER BY currentstrank DESC, percent DESC");
  8. $gcc->bind_param("ii", $_SESSION['prefaccid'], $_SESSION['userid']);
  9. } else {
  10. // $gcc = Get Current Character stats
  11. $gcc = $con->prepare("SELECT * FROM gwstats WHERE charid IN (0, ?) AND accid = ? AND userid = ? ORDER BY currentstrank DESC, percent DESC");
  12. $gcc->bind_param("iii", $_SESSION['prefcharid'], $_SESSION['prefaccid'], $_SESSION['userid']);
  13. }
  14. $gcc->execute();
  15. $gccres = $gcc->get_result();
  16. while ($row = $gccres->fetch_assoc()) {
  17. // $gnr = Get Next Rank
  18. $gnr = $con->prepare("SELECT stpoints, stname FROM gwsubtitles WHERE titlenameid = ? AND stpoints >= ? ORDER BY stpoints ASC LIMIT 1");
  19. $gnr->bind_param("ii", $row['titlenameid'], $row['titlepoints']);
  20. $gnr->execute();
  21. $gnr->bind_result($stpoints, $stname);
  22. $gnr->fetch();
  23. $gnr->close();
  24. // $gmr = Get Maximum Rank available for selected title
  25. $gmr = $con->prepare("SELECT MAX(strank), MAX(stpoints) FROM gwsubtitles WHERE titlenameid = ?");
  26. $gmr->bind_param("i", $row['titlenameid']);
  27. $gmr->execute();
  28. $gmr->bind_result($mra, $mpa); // $mra = max rank available, $mpa = max points available
  29. $gmr->fetch();
  30. $gmr->close();
  31. // $gt = Get Title
  32. $gt = $con->prepare("SELECT titlename FROM gwtitles WHERE titlenameid = ?");
  33. $gt->bind_param("i", $row['titlenameid']);
  34. $gt->execute();
  35. $gt->bind_result($titlename);
  36. $gt->fetch();
  37. $gt->close();
  38. $pr = number_format(($mpa - $row['titlepoints']));
  39. if ($row['currentstrank'] === $mra) {
  40. $pr = "Highest rank achieved!";
  41. $stname = "Highest rank achieved!";
  42. }
  43. if ($row['currentstrankname'] === NULL) {
  44. $row['currentstrankname'] = "No title earned yet!";
  45. $row['currentstrank'] = "0";
  46. }
  47. if ($row['percent'] >= 100) {
  48. $ohp = 100;
  49. } else {
  50. $ohp = $row['percent'];
  51. }
  52. echo '<tr><td style="width:175px;">' . $titlename . '</td><td style="width:210px;">' . $row['currentstrankname'] . '</td><td style="width:100px;">' . number_format($row['titlepoints']) . '</td><td style="width:70px;">' . $row['currentstrank'] . '</td>';
  53. echo '<td style="width:100px;">' . $pr . '</td><td><div class="percentbar" style="width:100px;"><div style="width:' . $ohp . 'px;"></div></div>';
  54. echo $ohp;
  55. echo '% completed</td><td>' . $stname . '</td></tr>';
  56. }
  57. $gccres->close();
  58. echo '</table><br />';
  59. }
  60. ?>