Guild Wars stat tracking The idea behind this is to track multiple characters individual stats as well as account stats.
25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

54 lines
2.6 KiB

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