Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Pobieranie i wstawianie rekordów
Forum PHP.pl > Forum > PHP
emajl22
Witam,

Najlepiej chyba będzie jak pokażę jak mam zbudowaną bazę danych:

Tabela `zlecenia`:

[ id ], [ dane1 ], [ dane2 ], [ dane3 ], [ status ], [ pracownicy ]

Tabela `pracownicy`:

[ id ], [ dane1 ], [ dane2 ], [ dane3 ], [ group ]

Oczywiście jest to tak mniej więcej podane, bo zamiast "dane1" czy "dane2" mam inne pola, ale to nieważne.

Mam podstronę "Zarządzaj zleceniami", w której użytkownik o grupie >= 3, ma prawo przydzielać pracowników do zleceń. Tabelka na podstronie wygląda mnie więcej tak:
  1. $zapytanie1 = mysql_query("SELECT * FROM `zlecenia`");
  2. $zapytanie2 = mysql_query("SELECT * FROM `pracownicy` WHERE `group` = '2'");
  3.  
  4. <table>
  5.  
  6. <tr>
  7. <td>ID</td>
  8. <td>Dane1</td>
  9. <td>Dane2</td>
  10. <td>Dane3</td>
  11. <td>Pracownicy</td>
  12. <td>Opcje</td>
  13. </tr>
  14.  
  15. // Wyswietlanie danych
  16.  
  17. <tr>
  18. <td>$zapytanie1['id']</td>
  19. <td>$zapytanie1['dane1']</td>
  20. <td>$zapytanie1['dane2']</td>
  21. <td>$zapytanie1['dane3']</td>
  22. <td>$zapytanie1['status']</td>
  23. <td>
  24. $zapytanie1['pracownicy']
  25. <select name="xxx">
  26. while (... mysql_fetch_assoc($zapytanie2)) {
  27. echo '<option value="'.$zapytanie2['login'].'" />'.$zapytanie2['login'].'';
  28. }
  29. </select>
  30. </td>
  31. <td><a href="#">Zapisz</a></td>
  32. </tr>
  33.  
  34. </table>

I jak widać, w polu tabeli "pracownicy" pobieram wszystkich pracowników i daję ich do selecta. Następny wiersz to pole "Opcje", w której jest opcja "Zapisz", która po naciśnięciu dodaje do bazy to co wybraliśmy w select. Problem polega na tym, że (tak jak wcześniej pisałem) chcę zrobić możliwość przydzielania wielu pracowników do zlecenia. Pobieram dane używając $_POST i zapisuję to do bazy.

Krótko mówiąc: nie wiem jak to zapisywać wszystko w jednym polu (`pracownicy`), a później pobierać.

Myślałem coś nad dodawaniem w formie "pracownik1, pracownik2", ale jak później to pobrać i wyświetlić? explode? ;/

Za pomoc będę niezmiernie wdzięczny!

Pozdrawiam.
lukaskolista
Korzystasz z relacyjnej bazy danych, wiec utworz relacje. Do tabeli pracownicy dodaj pole wskazujace na zlecenie w tabeli zlecenia (jezeli relacja 1:n dla zlecenia - prawocnicy), jezeli n:n to musisz utworzyc nowa tabele przechowujaca relacje
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.