Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> wyświetlenie wyników w jednym wierszu
lukasheek88
post
Post #1





Grupa: Zarejestrowani
Postów: 91
Pomógł: 0
Dołączył: 16.11.2011

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


Witajcie,

mam zapytanie
  1. SELECT id, nazwa, opis, wartosc, DATA, przedzial


I teraz tak, pole przedzial zawiera wartosci 1 lub 2 lub 3. Chciałbym powyższe wyniki wyświetlić tak by, w zależności od przedzialu wartosc znajdowala sie w odpowiedniej komorce tabeli.

Np. Mam takie rekordy w bazie danych

ID | NAZWA | OPIS | WARTOSC | DATA | PRZEDZIAL
1 ROWER | BRAK | 154 | 2017-05-15 | 1
2 ROWER | BRAK | 254 | 2017-06-14 | 2
3 ROWER | BRAK | 125 | 2017-04-10 | 1
4 ROWER | BRAK | 112 | 2017-03-15 | 3
5 ROWER | BRAK | 208 | 2017-06-12 | 2

Chcialbym wynik wyswietlic w taki sposób aby wartosc trafiala do odpowiedniej kolumny tabeli w zaleznosci od przedzialu

Miałoby to tak wyglądać:

  1. <tr><td>Nazwa<td><td>Przedzial 1</td><td>PRzedzial 2</td><td>Przedzial 3</td></tr>
  2. <tr><td>ROWER</td><td>154</td><td>254</td><td>112</td></tr>
  3. <tr><td>ROWER</td><td>125</td><td>208</td><td></td></tr>
  4.  


Ktoś podpowie ?


Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Puszy
post
Post #2





Grupa: Zarejestrowani
Postów: 279
Pomógł: 42
Dołączył: 10.10.2011

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


Sortowanie tablicy, foreach, instrukcja warunkowa. Ewentualnie pokuś się o wielokrotnego LEFT JOINa i uzyskaj strukturę tabeli z poziomu bazy.
Go to the top of the page
+Quote Post
Neutral
post
Post #3





Grupa: Zarejestrowani
Postów: 286
Pomógł: 46
Dołączył: 10.01.2016

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


  1. <?php
  2. $mysqli = new mysqli('localhost','root','','lukas');
  3.  
  4. $query1 = "select wartosc,nazwa from lukas where przedzial=1";
  5. $query2 = "select wartosc,nazwa from lukas where przedzial=2";
  6. $query3 = "select wartosc,nazwa from lukas where przedzial=3";
  7. $result1 = $mysqli->query($query1);
  8. $result2 = $mysqli->query($query2);
  9. $result3 = $mysqli->query($query3);
  10.  
  11. while($row = $result1->fetch_assoc()) {
  12. $arr0[]=$row['wartosc'];
  13. $err0[]=$row['nazwa'];
  14. }
  15. while($row2 = $result2->fetch_assoc()) {
  16. $arr1[]=$row2['wartosc'];
  17. $err1[]=$row2['nazwa'];
  18. }
  19. while($row3 = $result3->fetch_assoc()) {
  20. $arr2[]=$row3['wartosc'];
  21. $err2[]=$row3['nazwa'];
  22. }
  23.  
  24. echo "<table>";
  25. echo "<tr><th>Nazwa</th><th>Przedział 1</th><th>Przedział 2</th><th>Przedział 3</th></tr>";
  26. $theb = max(count($arr0),count($arr1),count($arr2));
  27.  
  28. for($i=0;$i<$theb;$i++){
  29.  
  30. if(!isset($arr0[$i])){
  31. $arr0[$i]=null;
  32. }if(!isset($arr1[$i])){
  33. $arr1[$i]=null;
  34. }if(!isset($arr2[$i])){
  35. $arr2[$i]=null;
  36. }
  37.  
  38. if(!isset($err0[$i])){
  39. $err0[$i]=null;
  40. }if(!isset($err1[$i])){
  41. $err1[$i]=null;
  42. }if(!isset($err2[$i])){
  43. $err2[$i]=null;
  44. }
  45. echo "
  46.  
  47. <tr><td>$err0[$i]/$err1[$i]/$err2[$i]</td><td>$arr0[$i]</td>
  48.  
  49. <td>$arr1[$i]</td>
  50.  
  51. <td>$arr2[$i]</td></tr>
  52.  
  53. ";
  54. }
  55.  
  56. echo "</table>";
  57. ?>
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 Aktualny czas: 22.08.2025 - 00:51