Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Mały problem ze skryptem
Forum PHP.pl > Forum > PHP
Waloch016

Mianowicie chodzi o to że chciałbym aby wyświetlany czas kończyl mi się po sekundach. A niestety otrzymuje cos takiego


  1. 00:25:09.000257825000006

Ponadto zegar po odświeżeniu albo zmienia wartość na większą albo na mniejszą a jak wiemy powinien odliczać czas czyli stale jednostajnie zmniejszać swoją wartość.
Przedstawie wam kod który odpowiada za wyświetlanie domniemanego licznika, zauważacie jakieś błędy?:


  1. #
  2. $totaalvordering = $own['rank'] * 100 + $own['rankvordering'];
  3. #
  4. if($totaalvordering > 900) {
  5. #
  6. $totaalvordering = 1280;
  7. #
  8. }
  9. #
  10. $kans = round($totaalvordering / 16);
  11. #
  12.  
  13. #
  14. if(isset($_POST['breakout']) && isset($_POST['user'])) {
  15. #
  16. $user = mysql_fetch_query("SELECT id, login FROM users WHERE id = '" . $_POST['user'] . "' AND gevangenis > '" . time() . "'");
  17. #
  18. if(!empty($user)) {
  19. #
  20. if($own['gevangenis'] <= tijd()) {
  21. #
  22. $getal = rand(1, 100);
  23. #
  24. if($kans >= $getal) {
  25. #
  26. echo'<div class="dark">font color="green" style="font-weight: bold">Udało ci się zwiać!</font></div>';
  27. #
  28.  
  29. #
  30. $own['rankvordering'] = $own['rankvordering'] + rand(1, 4);
  31. #
  32. mysql_query("UPDATE users SET rankvordering = '" . $own['rankvordering'] . "' WHERE id = '" . $own['id'] . "'");
  33. #
  34. mysql_query("UPDATE users SET gevangenis = '0' WHERE id = '" . $user['id'] . "'");
  35. #
  36. mysql_query("INSERT INTO berichten (onderwerp, bericht, afzender, geaddresseerde, datum, outbox) VALUES('Uitgebroken!', 'Beste crimineel,\r\n\r\nJe mede-crimineel " . $own['login'] . " heeft je zojuist uit de gevangenis gebroken!\r\nMet vriendelijke groet,\r\nAnoniem.', 'Anoniem', '" . $user['id'] . "', '" . get_global_date("Y-m-d H:i:s") . "', 'False')");
  37. #
  38.  
  39. #
  40. } else {
  41. #
  42. $minuten = $own['rank'];
  43. #
  44. if($minuten < 2) {
  45. #
  46. $minuten = 2;
  47. #
  48. }
  49. #
  50. $own['rankvordering'] += rand(0, 2);
  51. #
  52. mysql_query("UPDATE users SET rankvordering = '" . $own['rankvordering'] . "', gevangenis = '" . (time() + 60 * $minuten) . "' WHERE id = '" . $own['id'] . "'");
  53. #
  54. echo'<div class="dark"><font color="red" style="font-weight: bold">Już niedługo wychodzisz pozostało ci: ' . $minuten . 'minut!</font></div>';
  55. #
  56. }
  57. #
  58. } else {
  59. #
  60. echo'<div class="dark"><font color="red" style="font-weight: bold">Siedzisz w więzieniu!</font></div>';
  61. #
  62. }
  63. #
  64. } else {
  65. #
  66. echo'<div class="dark"><font color="red" style="font-weight: bold">Ten użytkownik nie jest w więzieniu!</font></div>';
  67. #
  68. }
  69. #
  70. }
  71. #
  72. echo'Jestes w wiezieniu mozesz postarac sie zbiec, zalpacic kaucje lub po prostu odsiedziec swoje! Wobor nalezy do Ciebie!<br /><br />
  73. #
  74.  
  75. #
  76. <form method="post">
  77. #
  78. <table width="100%" cellpadding="0" cellspacing="0">
  79. #
  80. <tr>
  81. #
  82. <td class="start" width="17">&nbsp;</td>
  83. #
  84. <td class="start">Nick:</td>
  85. #
  86. <td class="start" width="17">&nbsp;</td>
  87. #
  88. <td class="start">Moc</td>
  89. #
  90. <td class="start" width="17">&nbsp;</td>
  91. #
  92. <td class="start">Do wyjścia:</td>
  93. #
  94. <td class="start" width="17">&nbsp;</td>
  95. #
  96. <td class="start">Cena Okupu:</td>
  97. #
  98. </tr>';
  99. #
  100.  
  101. #
  102. $bajesklanten = mysql_query("SELECT id, power, gevangenis FROM users WHERE gevangenis > " . time()) or die(mysql_error());
  103. #
  104. while($user = mysql_fetch_assoc($bajesklanten)) {
  105. #
  106. $seconden = $user['gevangenis'] / tijd() * 100;
  107. #
  108. $borg = 200 * $seconden;
  109. #
  110.  
  111. #
  112. #
  113. <tr>
  114. #
  115. <td class="list"><input type="radio" name="user" value="' . $user['id'] . '" /></td>
  116. #
  117. <td class="list"><a href="index.php?p=profile&uid=' . $user['id'] . '">' . special_check($user['id']) . '</a></td>
  118. #
  119. <td class="list"><img src="images/icons/lightning.gif"></td>
  120. #
  121. <td class="list">' . groot($user['power']) . '</td>
  122. #
  123. <td class="list"><img src="images/icons/clock.gif"></td>
  124. #
  125. <td class="list"><span id="jail_' . $user['id'] . '">' . $seconden . '</span>
  126. #
  127. <script type="text/javascript">
  128. #
  129. aftellen(\'' . $seconden . '\', \'jail_' . $user['id'] . '\', true, false);
  130. #
  131. </script></td>
  132. #
  133. <td class="list"><img src="images/icons/money.gif"></td>
  134. #
  135. <td class="list">&euro; <span id="pay_' . $user['id'] . '">' . $borg . '</span>,-
  136. #
  137. <script type="text/javascript">
  138. #
  139. aftellen_borg(\'' . $seconden . '\', \'pay_' . $user['id'] . '\')
  140. #
  141. </script></td>
  142. #
  143. </tr>';
  144. #
  145. }
jesus61
Widzę że sobie nie poradziłeś jednak winksmiley.jpg

spróbuj 106 linijke zmienic na:
  1. $seconden = $user['gevangenis'] - time();


a jak to JavaScript wyświetla Ci ten czas to go też pokaż smile.gif

Waloch016
Cytat(jesus61 @ 5.10.2010, 08:30:52 ) *
Widzę że sobie nie poradziłeś jednak winksmiley.jpg

spróbuj 106 linijke zmienic na:
  1. $seconden = $user['gevangenis'] - time();


a jak to JavaScript wyświetla Ci ten czas to go też pokaż smile.gif



Tak miałem już to wtedy było ok kończyło się na sekundach ale z kolei pokazywało mi np. 800 min
jesus61
Skryptu nie pokazałeś więc zrób to w php tak:
Zaraz pod linijką 106 (która ma być taka jak podałem) dopisz:
  1. $godziny = floor($seconden / 3600);
  2. $minuty = floor(($seconden/60) - ($godziny*60));
  3. $sekundy = $seconden - ($minuty*60) - ($godziny*3600);
  4. $czas_do_wyjscia = $godziny.' godzin, '.$minuty.' minut, '.$sekundy.' sekund';

i dalej zamiast skryptu w linijkach 128 - 132 daj :
  1. '.$czas_do_wyjscia.'

i powinno działać.
Waloch016
Dzięki wielkie juz wszystko działa:) Dzieki za pomoc znów biggrin.gif
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.