Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Sprawdzenie praw do danych, a zapytanie
Jawor
post
Post #1





Grupa: Zarejestrowani
Postów: 73
Pomógł: 2
Dołączył: 1.10.2003

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


Witam

Mam nastepujace tabele:

Uzytkownicy
id_uzytkownika | login | haslo

Katalog
id_katalogu | id_uzytkownika | nazwa_katalogu | data

Element
id_elementu | id_katalogu | nazwa_elementu

W sesji przetrzymuje id_uzytkownika.
I teraz np. przed wyswietleniem wybranego elementu chce sprawdzic czy nalezy on do aktualnie zalogowanego uzytkownika.

Do tej pory robilem to dwoma zapytaniami:
1. pobranie id_katalogu z tabeli Element
2. pobranie id_uzytkownika z tabeli Katalog (posiadajac wczesniej pobrane id_katalogu)

na koniec porownuje pobrane id_uzytkownika z sesja ...

Zastanawiam sie jednak jak by to zrobic za pomoca jednego zapytania, aby jednoczesnie moc pozniej wyswietlic dane z tabeli Element.

Zapewne trzeba polaczyc te tabele niestety nie bardzo rozumie dzialanie JOIN.

Bede wdzieczny za pomoc z wyjasnieniem gdyz chcialbym to zrozumiec, a nie tylko wykorzystac gotowy kod ...

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





Grupa: Zarejestrowani
Postów: 73
Pomógł: 2
Dołączył: 1.10.2003

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


Dziekuje bardzo za pomoc.

Rozumiem ze rozbudowany przeze mnie WHERE jest poprawny i nie przyniesie zadnych nieoczekiwanych zdarzen ?

Update:

Mam jeszcze jedno pytanie.
Czy istnieje mozliwosc dodania do tego zapytania elementu ktory by mi zwrocil liczbe pobranych rekordow ?

Probowalem w ten sposob:
  1. SELECT count(element.id_elementu) AS jakas_nazwa, element.nazwa AS nazwa_elementu ... FROM element INNER JOIN katalog ON element.id_katalogu = katalog.id_katalogu WHERE katalog.id_uzytkownik = $_SESSION['id_uzytkownik'] AND element.id_elementu = 4

Lecz to niestety nie dziala (Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ...)
Bylo by to przydatne do ostatecznego sprawdzenia czy dany element nalezy do uzytkownika.
Aktualnie robie to za pomoca funkcji mysql_num_rows -> jak zwraca 0 to element nie nalezy do uzytkownika, a jak 1 to nalezy.
Zastanawiam sie jednak czy nie da sie jakos uniknac uzycia mysql_num_rows.
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: 28.12.2025 - 04:17