Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]pusty rekord w tabeli
eurosoft
post 15.10.2011, 17:06:44
Post #1





Grupa: Zarejestrowani
Postów: 179
Pomógł: 0
Dołączył: 5.11.2010

Ostrzeżenie: (0%)
-----


Witam, mam poniższy kod:
  1. ........
  2. if( !empty($_POST['nazwa_anim']) )
  3. {
  4. $i=0;
  5. $l=0;
  6.  
  7. $sql1 = "tu moje zapytanie zapytanie";
  8. $result1 = mysql_query($sql1) or die('Queryproblem: '.mysql_error());
  9. while($myrow = mysql_fetch_array($result1))
  10. {
  11. if($myrow['animals']==$zwierz || $myrow['animals1']==$zwierz || $myrow['animals2']==$zwierz)
  12. {
  13. for($k=0; $k<$i; $k++)
  14. {
  15. if($ranking[$k]['nazwa']==$myrow['imie_nazwisko'])
  16. {
  17. $ranking[$k]['nazwa']=$myrow['imie_nazwisko'];
  18. if($myrow['animals']==$zwierz) $ranking[$k]['ilosc']+=$myrow['ilosc'];
  19. if($myrow['animals1']==$zwierz) $ranking[$k]['ilosc']+=$myrow['ilosc1'];
  20. if($myrow['animals2']==$zwierz) $ranking[$k]['ilosc']+=$myrow['ilosc2'];
  21. break;
  22. }
  23. }
  24. if($k==$i)
  25. {
  26. $ranking[$i]['ilosc']=0;
  27. $ranking[$i]['nazwa']=$myrow['imie_nazwisko'];
  28. if($myrow['animals']==$zwierz) $ranking[$i]['ilosc']+=$myrow['ilosc'];
  29. if($myrow['animals1']==$zwierz) $ranking[$i]['ilosc']+=$myrow['ilosc1'];
  30. if($myrow['animals2']==$zwierz) $ranking[$i]['ilosc']+=$myrow['ilosc2'];
  31. $i++;
  32. }
  33. }
  34. }
  35. }
  36. echo "<table border=1 cellspacing=2 cellpadding=0 bgcolor=#CCCCCC bordercolor=#a7a7a7 align=center>";
  37.  
  38. echo "<tr>";
  39. echo "<th>L.p</th>";
  40. echo "<th>Nazwisko</th>";
  41. echo "<th>Ilość</th>";
  42.  
  43. array_multisort($ranking['ilosc'], SORT_NUMERIC,SORT_DESC, $ranking);
  44.  
  45.  
  46. function cmp($a, $b)
  47. {
  48. if ($a['ilosc'] == $b['ilosc']) {
  49. return 0;
  50. }
  51. return ($a['ilosc'] < $b['ilosc']) ? 1 : -1;
  52. }
  53.  
  54. usort($ranking, "cmp");
  55.  
  56. foreach($ranking as $r)
  57. {
  58. $l++;
  59. echo "<tr>";
  60. echo "<td width=30 align=center>".$l."</td>";
  61. echo "<td width=240>".$r['nazwa']."</td>";
  62. echo "<td width=80 align=center>".$r['ilosc']."</td>";
  63. echo "</tr>";
  64. }
  65. echo "</table>";
  66.  
  67.  
  68.  
  69.  


raport działa mi dobrze, ale jest jeden mały problem, za każdym razem mam jeden wers pusty, posiada on L.p. a inne dene sa puste (napewno w bazie pustego rekordu nie mam) Prosze o zaglądnięcie w mój kod.

Ten post edytował eurosoft 15.10.2011, 17:07:49
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
croc
post 15.10.2011, 17:16:47
Post #2





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

Ostrzeżenie: (0%)
-----


Chyba łatwiej będzie jak podasz kilka wierszy z bazy z opisem pól i powiesz jaki raport chcesz uzyskać, bo Twój kod jest bardzo brzydki.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 01:07