Guild Wars stat tracking The idea behind this is to track multiple characters individual stats as well as account stats.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 
 
 

54 lignes
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. ?>