Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php/mysql] wyswietlanie pustego pola
plurr
post
Post #1





Grupa: Zarejestrowani
Postów: 175
Pomógł: 12
Dołączył: 28.06.2007
Skąd: Bytom

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


witam,

mam dwie bazy:
Pracownicy (id_prac, imie, nazwisko, pesel, nr_dowodu, stanowisko, id_kont) oraz
Kontrachenci (id_kont, nazwa, miasto, telefon)

Pracownik jest powiazany z kontrachentem za pomoca 'id_kont' - chce wiedizec u ktorego kontrachenta jest dany pracownik.
Tabela aktywnosc nie jest istotna w tym momencie.

Kod wyglada nastepujaco:

  1. <?php
  2. ...
  3.  
  4. $sql = "select imie, nazwisko, pesel, stan, od, do, nazwa, miasto, pracownicy.id_ko
    nt from pracownicy, aktywnosc, kontrachenci where pracownicy.id_prac=aktywnosc.id
    _akt AND pracownicy.id_kont=kontrachenci.id_kont"
    ;
  5.  
  6.  
  7.  
  8. $query = mysql_query($sql);
  9. $num = mysql_num_rows($query);
  10.  
  11. echo "<table id="sql" >";
  12.  
  13. echo "<th>imie<th>nazwisko<th>pesel<th>stan<th>od<th>do<th>nazwa<th>miasto ";
  14.  
  15. for($i=1; $i<=$num; $i++)
  16. {
  17. $wiersz = mysql_fetch_array($query);
  18. if($i%2)
  19. echo "<tr id="tr1">";
  20. else 
  21. echo "<tr>";
  22. echo "<td>".$wiersz['imie']."</td>";
  23. echo "<td>".$wiersz['nazwisko']."</td>";
  24. echo "<td>".$wiersz['pesel']."</td>";
  25. echo "<td>".$wiersz['stan']."</td>";
  26. echo "<td>".$wiersz['od']."</td>";
  27. echo "<td>".$wiersz['do']."</td>";
  28. if($wiersz['id_kont'] == "")
  29.  
  30. {
  31. echo "<td>n/a</td>";
  32. echo "<td>n/a</td>";
  33. }
  34.  
  35. else 
  36. {
  37. echo "<td>".$wiersz['nazwa']."</td>";
  38.  echo "<td>".$wiersz['miasto']."</td>";
  39. }
  40.  
  41. echo "</tr>";
  42. }
  43.  
  44. echo "</th></table>";
  45. ?>


w zawartosci wyswietlanej maja byc wszyscy pracownicy w wraz z kontrachentem u ktorego są, jesli pracownicy.id_prac jest puste tzn ze znajduje sie w firmie i ma wypisac "n/a " w polu nazwa i miasto (kontrachenta).

Problem w tym ze bazie mam np 6 pracownikow, z tego trzech ma wpisany id_kont, pozstali nic.

Skrypt dziala zle, a mianowicie wypisuje mi tylko tych ktorzy maja wpisane id_kont. :/

Prosze o pomoc bo juz nie wiem gdzie robie blac :/

Ten post edytował plurr 14.07.2007, 15:18:02


--------------------
Wyobraźnia bez wiedzy może stworzyć rzeczy piękne.
Wiedza bez wyobraźni najwyżej doskonałe.

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





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


wypisuje ci tylko tych ponieważ w zapytaniu masz:

where pracownicy.id_prac=aktywnosc.id_akt AND pracownicy.id_kont=kontrachenci.id_kont

wywal ostatni warunek, bedziesz mial:

where pracownicy.id_prac=aktywnosc.id_akt

i teraz wyświetli ci wszystkich


--------------------
zmoderowano - waga i rozmiar
Go to the top of the page
+Quote Post
plurr
post
Post #3





Grupa: Zarejestrowani
Postów: 175
Pomógł: 12
Dołączył: 28.06.2007
Skąd: Bytom

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


ale bez tego warunku mi dubluje wyniki, ten warunek laczy dwie tabele, zeby sie wiersze nie powtarzaly. hmm.

wydaje mi sie ze trzeba zrobic tak jakby dwa zapytania, pierwsze to te ktore wybiera z bazy pracownikow niemajacych id_kont, a drugie tych mających - pozniej jakos to polaczyc zeby stworzylo jedna tabele hmm...

Ten post edytował plurr 14.07.2007, 16:13:43


--------------------
Wyobraźnia bez wiedzy może stworzyć rzeczy piękne.
Wiedza bez wyobraźni najwyżej doskonałe.

Albert Einstein
Go to the top of the page
+Quote Post
misiek172
post
Post #4





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

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


no to zastosuj w zapytaniu polecenie DISTINCT

http://forum.php.pl/index.php?showtopic=56819&hl=

Ten post edytował misiek172 14.07.2007, 16:15:30


--------------------
zmoderowano - waga i rozmiar
Go to the top of the page
+Quote Post
plurr
post
Post #5





Grupa: Zarejestrowani
Postów: 175
Pomógł: 12
Dołączył: 28.06.2007
Skąd: Bytom

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


distinct tu nie pomoze. Piszac dubluje mialem na mysli to, ze sql tworzy wiersze z roznymi mozliwosciami, warunek musi byc. Problem nada istnieje :/

domyslam sie wiec, ze nikt nie moze mi pomoc sad.gif


--------------------
Wyobraźnia bez wiedzy może stworzyć rzeczy piękne.
Wiedza bez wyobraźni najwyżej doskonałe.

Albert Einstein
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: 19.08.2025 - 19:50