Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL] łączenie rekordów z tym samym id_session. Jak takie coś wykonać ?
FliSs_tCv
post
Post #1





Grupa: Zarejestrowani
Postów: 198
Pomógł: 3
Dołączył: 27.02.2007
Skąd: Tczew

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


Witam stworzyłem skrypt który dopisuje dane z koszyka oraz nadaje danemu zamówieniu indywidualne id_session czyli w moim wypadku id_zam Moim pytaniem jest jak połączyć z pośród wielu rekordów w bazie te o tym samym id_zam.

Widzę to tak kazde zamówienie ma właściciela który podaje swoje dane czyli wyświetlić te dane kontaktowe z danego id_zam gdzie byłby to odnośnik do następnej strony w który było by wyświetlone wszystko co znajdowało się pod danym id_zam. Jak to wykonać ;>

Kolega zapodał takim zapytaniem ale powiedział że to pewnie nie to i więcej nie może mi pomóc i kazał zwrócić sie do was na forum z myślą że ktoś będzie wiedział jak to wykonać (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Zapytanie:
  1. SELECT * FROM produkty_zamowione AS p1, produkty_zamowione AS p2 WHERE p1.id_zam=p2.id_zam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
sagittariuspl
post
Post #2





Grupa: Zarejestrowani
Postów: 374
Pomógł: 3
Dołączył: 30.12.2006
Skąd: co skąd?

Ostrzeżenie: (10%)
X----


poczytaj o
  1. JOIN
Go to the top of the page
+Quote Post
vokiel
post
Post #3





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

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


Najlepiej jakby każdy użytkownik miał jakiś unikalny id dodawany do zamówienia (czy np PHPSESSID), a wtedy można sprawdzać
  1. WHERE p1.id_zam=p2.id_zam AND p1.id_sesji = PHPSESSID;
Go to the top of the page
+Quote Post
FliSs_tCv
post
Post #4





Grupa: Zarejestrowani
Postów: 198
Pomógł: 3
Dołączył: 27.02.2007
Skąd: Tczew

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


Kurcze widzę że chyba to co napisałem nie było jasne (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) he więc pokaże to:
  1. <?php
  2. $_SESSION['ident'] = rand(10000, 99999);
  3. ?>

w ten sposób generuje do każdego zamówienia jakiś jak napisaliście unikalny nr zamówienia (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Moim pytaniem jest jak wyświetlić zamówienia z takim samym id_zam(id_session) jako jedność gdzie po kliknięciu zobaczyłbym całą listę tego zamówienia ?. Pozdrawiam serdecznie (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)

* całą listę czyli wszystkie produkty z tym samym id_zam(id_session)
Go to the top of the page
+Quote Post
vokiel
post
Post #5





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

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


Mam nadzieje, że nigdzie nie nadpisujesz tego $_SESSION['ident'] (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Jeśli masz np tabelke 'produkty_zamowione' w bazie:
| id | nazwa | ilosc | id_zam | id_usr |

  1. <?php
  2. $id_zam = $_SESSION['ident'] ;
  3. $SQL = "SELECT * FROM produkty_zamowione WHERE id_zam= '".$id_zam."' limit 0, 30;";
  4. ?>


Jeśli natomiast masz druga tabele z danymi usr to możesz to zrobić tak, że w sesji zapisujesz id tego zalogowanego usr, a potem sprawdzać to z jego id w bazie:
tabela 'usr'
| id_usr | imie | nazwisko | ... |
tabela 'produkty_zamowione'
| id | nazwa | ilosc | id_zam | id_usr |

  1. <?php
  2. $_SESSION['zalogowany_id'] = $wiersz['id_usr']; // czyli id zalogowanego (z bazy podczas logowania)
  3.  
  4. $id_zam = $_SESSION['ident'] ;
  5. $SQL = "SELECT * FROM produkty_zamowione, usr 
  6. WHERE produkty_zamowione.id_zam= '".$id_zam."' AND 
  7. produkty_zamowione.id_usr = usr.id_usr AND 
  8. usr.id_usr = '".$_SESSION['id_usr']."' 
  9. limit 0, 30;";
  10. ?>


Jeśli nie o to Ci chodzi, to opisz dokładniej (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post

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: 22.08.2025 - 23:52