Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][MYSQL] Dziwny wynik równania, Z kosmos O.o
Lethys
post
Post #1





Grupa: Zarejestrowani
Postów: 642
Pomógł: 2
Dołączył: 9.03.2006

Ostrzeżenie: (30%)
XX---


Piszę gry browserową i obecnie tworzę więzienie z możliwością wykupienia więźnia poprzez zapłatę kaucji. Mój problem polega na tym że zapłata różni się od tej która jest pokazana w tabeli.

Aby wam pokazać o co chodzi zrobiłem screeny :

(IMG:http://img505.imageshack.us/img505/5668/18407522fn6.jpg)



No i teraz kod ( zmienna $kaucja to ten wzór ) :

  1. <?php
  2. if (!$top) {
  3. $tsel = mysql_query("select * from players where wiezienie='1' and miasto='$stat[miasto]'");
  4. while ($top = mysql_fetch_array($tsel)) {
  5. $kara = floor(($top[kara]/10));
  6. $kaucja = floor(($top[kara]*123)/10);
  7. print "<tr><td><center>$top[user]</center></td><td><center>$kara dni</center></td><td><center>$kaucja złota</center></td><td><center><a href=wiezienie.php?top=$top[id]>Zapłać</a></center></td>";
  8. }
  9. print "</table><br>";
  10. }
  11.  
  12.  
  13.  
  14. if ($top) {
  15. if (empty ($top[id])) {
  16. print "<font color=\"#FF0000\"><b><center><br>Nie ma takiego gracza lub nie znajduje się on w więzieniu!<br><br></center></b></font><meta http-equiv=\"Refresh\" content=\"1; url=wiezienie.php\">";
  17. }
  18. if ($kaucja > $stat[money]) {
  19. print "<font color=\"#FF0000\"><b><center><br>Nie masz tyle pieniędzy!<br><br></center></b></font><meta http-equiv=\"Refresh\" content=\"1; url=wiezienie.php\">";
  20. }
  21. $kaucja = floor(($top[kara]*123)/10);
  22.  
  23.  
  24. mysql_query("update players set money=$stat[money]-$kaucja where id=$stat[id]") or die("Nie można wpłacić kaucji");
  25. print "<br><br><center><font color=\"#008000\">Zapłaciłeś <b>$kaucja</b> pieniędzy kaucji i uwolniłeś gracza (id <b>$top[user]</b>) z więzienia.</font><br><br><br></font><meta http-equiv=\"Refresh\" content=\"2; url=wiezienie.php\">";
  26. mysql_query("update players set wiezienie=0 where id=$top[id]");
  27. mysql_query("update players set kara=0 where id=$top[id]");
  28. }
  29. ?>



Wzór zapłaty jest taki sam jak wyświetlane w tabeli, nie rozumiem czemu inna liczba wychodzi :/

Może ktoś zerknąć ?

Ten post edytował Lethys 14.05.2008, 18:58:49
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Lethys
post
Post #2





Grupa: Zarejestrowani
Postów: 642
Pomógł: 2
Dołączył: 9.03.2006

Ostrzeżenie: (30%)
XX---


@Twoje sposoby nie działały ale sam już rozwiązałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Przed updatami do bazy danych dałem zmienne z pętli :

  1. <?php
  2. $tsel = mysql_query("select * from players where wiezienie='1' and miasto='$stat[miasto]'");
  3. $top = mysql_fetch_array($tsel);
  4. $kaucja = floor(($top[kara]*123)/10);
  5. ?>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 12.10.2025 - 18:28