![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 733 Pomógł: 4 Dołączył: 11.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich.
Mam pytanie. U mnie w bazie, jeśli ktoś zakupi np. 3 przedmioty to tworzą się trzy rekordy w bazie `zamowienia` i chcę teraz je wszystkie wyciągnąć do wysyłki maila i nie wiem jak to zrobić, bo chcę tylko trzy ostatnie. Jeśli ktoś zamówi dwie rzeczy to tylko dwa ostatnie rekordy itd. Macie jakiś pomysł? -------------------- |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
...order by POLE_Z_DATA desc limit 3
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 733 Pomógł: 4 Dołączył: 11.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Ale ja nie wiem ile jest tych rekordów ostatnich
-------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
A po co ci to wiedziec?? Chciałeś max 3 to ci dałem limit 3 i po sprawie.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 733 Pomógł: 4 Dołączył: 11.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
No muszę wiedzieć ile ich zamówił, a to z trzema to był przykład. A jak zamówi 10?
-------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 447 Pomógł: 191 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Ja bym to rozwiązał tak, że zapisuję jednen wiersz do tabeli orders czy tam zamówienia
I do tablicy order_products/zamowienie_produkty zapisywał id'ki produktów i idki zamówienia do którego przyporządkowane są te produkty (no i dodatkowo ich ilość i pare innych rzeczy, które tam możesz mieć) Wtedy nie miał byś takich problemów ![]() Jeśli nie chcesz tak mocno zmieniać struktury bazy, to możesz dodać (chyba, że już masz) pole time/czas do którego będziesz wrzucał czas złożenia zamówienia. Dzięki temu, jeśli user o id 7 złoży zamówienie, w czasie 1234567 to będziesz miał 3 zamówienia typu : id |user| time | inne pola 1 7 1234567 | ... 1 7 1234567 | ... 1 7 1234567 | ... Więc wyciągniesz je zapytaniem : SELECT * FROM `orders` WHERE time=1234567 AND user=7 -------------------- :)
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Nie kumam twojej filozofii.... skoro chcesz pobierać wszystkie jakie zamówił to kurcze pobieraj. W czym masz problem?
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Musisz mieć jakąś kolumnę grupującą zamówione produkty w 1 zamówienie. Przykładowo:
zamowienia [id, uzytkownik] zamowione_produkty [id, id_zamowienia, produkt] Wówczas pobierasz wszystkie rekordy z tabeli zamowione_produkty, dla których id_zamowienia to zamówienie, dla którego produkty chcesz pobrać. Jeśli nie masz w żaden sposób zorganizowanego takiego powiązania (nie wiem - klucz sesji, cokolwiek) to raczej nie ogarniesz tego. Nie będziesz w stanie przyporządkować zamówionych produktów do konkretnego zamówienia. |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 733 Pomógł: 4 Dołączył: 11.11.2009 Ostrzeżenie: (0%) ![]() ![]() |
Rozwiązałem trochę inaczej(znaczy się zajrzałem w kod trochę wyżej i mogłem to pobrać jeszcze z tabeli, której jeszcze nie wyczyściłem(tabela koszyk))
-------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 16.07.2025 - 05:31 |