Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Nie wrzuca wybranej wartości w wybrane miejsce.
Forum PHP.pl > Forum > Przedszkole
DariuszNek
Witam. Jestem dosyć zielony w PHP, tym samym nie mam pojęcia gdzie leży problem i powołuje się na Was tongue.gif

  1. <?php
  2.  
  3.  
  4. $SERVER_IP="TUTAJ MOJE IP";
  5.  
  6.  
  7. function get_data($url)
  8. {
  9. $ch = curl_init();
  10. curl_setopt($ch, CURLOPT_URL, $url);
  11. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  12. curl_setopt($ch, CURLOPT_TIMEOUT, 5);
  13. $data = curl_exec($ch);
  14. $httpStatus = curl_getinfo($ch, CURLINFO_HTTP_CODE);
  15. curl_close($ch);
  16. return array(
  17. 'status' => $httpStatus,
  18. 'data' => $data
  19. );
  20. }
  21.  
  22.  
  23. $userlistserver = get_data("http://api.iamphoenix.me/list/?server_ip=" . $SERVER_IP . "");
  24. $serverdata = get_data("http://minecraft-api.com/v1/get/?server=" . $SERVER_IP . "");
  25.  
  26.  
  27. $data_list = json_decode($userlistserver["data"], true);
  28. $data_general = json_decode($serverdata["data"], true);
  29.  
  30.  
  31. $array_list = explode(',', $data_list['players']);
  32. ?>
  33. <!DOCTYPE html>
  34. <html>
  35. <head>
  36. <meta charset="utf-8">
  37. <title> PHP Query 2</title>
  38. <link rel="stylesheet" href="https://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.no-icons.min.css">
  39. <link href='http://fonts.googleapis.com/css?family=Lato:300,400' rel='stylesheet' type='text/css'>
  40. <link href="https://netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css" rel="stylesheet">
  41. <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
  42. <script type="text/javascript" src="https://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
  43. <script language="javascript">
  44. jQuery(document).ready(function(){
  45. $("[rel='tooltip']").tooltip();
  46. });
  47. </script>
  48. <style>
  49. /*Custom CSS Overrides*/
  50. body {
  51. font-family: 'Lato', sans-serif !important;
  52. }
  53. </style>
  54. </head>
  55. <body>
  56. <div class="container">
  57. <h1>MC PHP Query</h1><hr>
  58. <div class="row">
  59. <div class="span4">
  60. <h3>General Information</h3>
  61. <table class="table table-striped">
  62. <tbody>
  63. <tr>
  64. <td><b>IP</b></td>
  65. <td><?php echo $SERVER_IP; ?></td>
  66. </tr>
  67. <?php if ($serverdata["status"] == "200" && $data_general['error'] == "") { ?>
  68. <tr>
  69. <td><b>Version</b></td>
  70. <td><?php echo $data_general['version']; ?></td>
  71. </tr>
  72. <?php } ?>
  73. <?php if ($serverdata["status"] == "200" && $data_general['error'] == "") { ?>
  74. <tr>
  75. <td><b>Players</b></td>
  76. <td><?php echo "".$data_general['players']['online']." / ".$data_general['players']['max']."";?></td>
  77. </tr>
  78. <?php } ?>
  79. <tr>
  80. <td><b>Status</b></td>
  81. <td><? if($data_general['status'] == 'true') { echo "<i class=\"icon-ok-sign\"></i> Server is online"; } else { echo "<i class=\"icon-remove-sign\"></i> Server is offline";}?></td>
  82. </tr>
  83. <?php if ($serverdata["status"] == "200" && $data_general['error'] == "") { ?>
  84. <tr>
  85. <td><b>Latency</b></td>
  86. <td><?php echo "".$data_general['latency']."ms"; ?></td>
  87. </tr>
  88. <?php } ?>
  89. </tbody>
  90. </table>
  91. </div>
  92. <div class="span8">
  93. <h3>Players</h3>
  94. <?php
  95. if ($userlistserver["status"] == "200" && $data_general['error'] == "") {
  96. //Take the username values from the array & grab the avatars from Minotar.
  97. foreach($array_list as $key => $value){$users .= "<a data-placement=\"top\" rel=\"tooltip\" style=\"display: inline-block;\" title=\"".$value."\">
  98. <img src=\"https://minotar.net/avatar/".$value."/50\" size=\"40\" width=\"40\" height=\"40\" style=\"width: 40px; height: 40px; margin-bottom: 5px; margin-right: 5px; border-radius: 3px;\"/></a>";}
  99. //Display the avatars only when there are players online.
  100. if($data_general['players']['online'] > 0) {
  101. print_r($users);
  102. }
  103. //If no avatars can be shown, display an error.
  104. else {
  105. echo "<div class=\"alert\"> There are no players online at the moment!</div>";
  106. }
  107. }else{
  108. echo "<div class=\"alert\"> Query must be enabled in your server.properties file!</div>";
  109. }
  110. ?>
  111. </div>
  112. </div>
  113. </div>
  114. </body>
  115. </html>


Jest to status serwera Minecraft wraz z avatarami graczy online na serwerze. Tylko jest problem. Dokładniej:

  1. <img src=\"https://minotar.net/avatar/".$value."/50\" size=\"40\" width=\"40\" height=\"40\" style=\"width: 40px; height: 40px; margin-bottom: 5px; margin-right: 5px; border-radius: 3px;\"/></a>";


Tam gdzie ma znaleźć się wartość w ogóle jej nie wrzuca. Powinno wyglądać to tak:

https://minotar.net/avatar/NICKGRACZA/50

A wygląda następująco:

https://minotar.net/avatar//50

Przez to wyrzuca niepoprawny obrazek.
Mam nadzieję, że mnie zrozumieliście.
Z góry - wielkie dzięki za pomoc. smile.gif
Kshyhoo
Na początek usuń to:
  1. size=\"40\" width=\"40\" height=\"40\"
Turson
Przed foreach linii 97 wyprintuj tablicę $array_list
DariuszNek
Cytat(Turson @ 26.05.2014, 09:14:19 ) *
Przed foreach linii 97 wyprintuj tablicę $array_list


Możesz jaśniej? Zrobiłem takie coś, nie wiem nawet czy to jest dobrze zrobione, jednakże i tak nie pomaga:

  1. print_r($array_list);


Jedna linijka wyżej od foreach.
Turson
To znaczy, że w tablicy $array_list nic nie masz. Zacznij od sprawdzenia
  1. $array_list = explode(',', $data_list['players']);

czy np. $data_list['players'] również coś zawiera
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.