![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 276 Pomógł: 0 Dołączył: 30.06.2010 Ostrzeżenie: (10%) ![]() ![]() |
Witam!
Potrzebuję stworzyć warunek: if ( $topic_id = 16 && /no wlasnie, co dalej?/ ) Chodzi o to, że chcę sprawdzić czy w bazie, w danym temacie istnieje post, napisany przez usera o ID = X. Jak mam to sprawdzić? Myślałem tak, że sprawdzę sobie czy ostatni post jest napisany przez usera = X, ale to też nie działa...:
Jak to zrobić? I najlepiej żeby to sprawdzało spośród wszystkich postów, a nie spośród tylko ostatniego. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 377 Pomógł: 9 Dołączył: 2.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
Zrób sobie tak:
1. Pobierz wszystkich użytkowników dla danego tematu. 2. Zrób pętle 3. Zrób warunek (if) - w pętli |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 350 Pomógł: 31 Dołączył: 23.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
phpbb_posts - tam masz zapisane id tematu, id usera
wiec zapytanie w stylu; select * from phpbb_posts where topic_id = X AND poster_id = Y; |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 276 Pomógł: 0 Dołączył: 30.06.2010 Ostrzeżenie: (10%) ![]() ![]() |
Wujek, tak mam zrobione przecież. Ale potem jak porównuję:
To w efekcie niby warunek jest cały czas niespełniony. A tak naprawdę powinien być spełniony, więc o co kaman? Pod zmienną $idbota, kryje się cyfra 6 czyli id jednego z userów. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 350 Pomógł: 31 Dołączył: 23.05.2010 Ostrzeżenie: (0%) ![]() ![]() |
ale po co taki warunek przy moim zapytaniu co podałem?
klauzura WHERE w zapytaniu za Ciebie instrukcje IF ($poster_id == $idbota) Ty masz tylko sprawdzić czy zapytanie zwróci Ci wynik ($num == 1 (czyli jest post) czy też może nie $num == 0 (czyli FALSE, czyli brak postów)) UPDATE: poza tym Twój warunek się niespełnia ponieważ w pętli while utworzyłeś zmienną - OK, a wiesz jak działa w Twoim przypadku ta pętla? 1) pobiera np. 50 postów (i mamy 50 poster_id co nie? np. od 1 do 50 niech będzie) 2) ty zdefiniowałeś $poster_id w pętli - OK, ale POZA PĘTLA robisz warunek! 2.1) pętla while $poster_id zapisało do zmiennej OSTATNI RUCH PĘTLI, czyli np. poster_id = 50 czyli nie sprawdzi Ci pozostałych Idków z tematu! poprawnie powinno być coś w stylu;
ale ogolnie polecam Ci mój sposób wyżej wspomniany. Ten post edytował wujek2009 30.10.2011, 10:38:03 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 16:31 |