Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL][PHP] Inner join kilka tabel, Pobieranie danych z róznych pól i tabel
Denix
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 21.05.2013
Skąd: Tychy

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


Witam,

Otóż potrzebuje pobrać dane z kilku tabel z różnych pól. Dane mniej wiecej sa polaczone tzn. Device.type jest polaczony z Device_type.Id (i z Device_type musze pobrac jego nazwe i pozniej wyswietlic w PHP. Próbowałem to ogarnąć, trochę szukałem po internecie ale nie znalazłem tego czego poszukuje... SQL zwraca Pusty wynik :/... oto moje zapytanie:

  1. SELECT
  2. Device.Id,
  3. Device.ST,
  4. Device.type,
  5. Device.model,
  6. Device.SN,
  7. Device.owner,
  8. Device.arrived_date,
  9. Device.device_name,
  10. Device.section,
  11. Device.line,
  12. Device.note,
  13. Device.avaiable,
  14. Worker.id,
  15. Worker.name,
  16. Worker.surname,
  17. Section.Id,
  18. Section.section,
  19. Device_type.id,
  20. Device_type.device
  21.  
  22. FROM Device
  23. INNER JOIN Worker ON Device.owner=Worker.id
  24. INNER JOIN Section ON Device.section=Section.Id
  25. INNER JOIN Device_type ON Device.type=Device_type.id


Nie potrafię dojść czemu zwraca cały czas pusty wynik.. Proszę o pomoc.

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Denix
post
Post #2





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 21.05.2013
Skąd: Tychy

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


SPróbowałem użyć funkcji LEFT JOIN ... i nic... po usuwałem workera, sprawdzilem, pozniej kolejne i dalej nic... zarówno jak SQL w my adminie pokazuje ze zapytanie jest poprawne ale brak rekordow do wyswietlenia tak i PHP tak samo mi robi :S..


  1. $sql = "SELECT
  2. Device.Id,
  3. Device.ST,
  4. Device.type,
  5. Device.model,
  6. Device.SN,
  7. Device.owner,
  8. Device.arrived_date,
  9. Device.device_name,
  10. Device.section,
  11. Device.line,
  12. Device.note,
  13. Device.avaiable,
  14. Worker.id,
  15. Worker.name,
  16. Worker.surname,
  17. Section.Id,
  18. Section.section,
  19. Device_type.id,
  20. Device_type.device
  21.  
  22. FROM Device
  23. LEFT JOIN Worker ON Device.owner=Worker.id
  24. LEFT JOIN Section ON Device.section=Section.Id
  25. LEFT JOIN Device_type ON Device.type=Device_type.id ";
  26.  
  27. $result = $db->query($query);
  28. $count = $result->num_rows;
  29. echo $count.' records';
  30. for($i=0; $i < $count; $i++)
  31. {
  32. $row = $result->fetch_assoc();
  33. if($row['avaiable']==1) $ava = '<b style="color: green;">Avaiable</b>';
  34. else $ava = '<b style="color: red;">Unavaiable</b>';
  35.  
  36. echo '
  37.  
  38. <tr style="font-size: 10px;">
  39.  
  40. <td>'.$row['ST'].'</a> </td><td>'.$row['type'].' </td> <td> '.$row['model'].' </td> <td> '.$row['SN'].' </td>
  41. <td> '.$row['owner'].' </td> <td> '.$row['arrived_date'].' </td>
  42. <td> '.$row['device_name'].' </td> <td> '.$row['section'].' </td> <td> '.$row['line'].' </td>
  43. <td> '.$ava.' </td> <td> <a href="index.php?id=pa&p=devices&act=edit-form&sid='.$row['Id'].'"> Edit </a> || <a href="index.php?id=pa&p=devices&act=delete&sid='.$row['Id'].'"> Delete </a> </td>
  44. </tr>
  45. ';
  46.  
  47. }


Edited
Do zamknięcia... SQL po restarcie hula, a ja z robiłem błąd w składni php (IMG:style_emoticons/default/tongue.gif) złych zmiennych uzyłem.

  1. $resuts = $db->query($sql);


Tak byc powinno

Ten post edytował Denix 22.05.2013, 08:52:34
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: 5.04.2026 - 01:50