Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wyszukiarka forum
Bartol
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 7.08.2004
Skąd: Tomaszów Maz.

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


Mam taki sobie kodzik:

  1. <?php
  2.  
  3. $strQuery = &#092;"SELECT id, tytul, tresc, date FROM \".$cfg['mysql_prefix'].\"posts WHERE (tresc LIKE '%\".$_POST['search'].\"%') OR (tytul LIKE '%\".$_POST['search'].\"%') ORDER BY date\";
  4. $resResult = mysql_query($strQuery);
  5. while($arrRow = mysql_fetch_assoc($resResult))
  6. {
  7. $tematy[$i][id]  = $arrRow[id];
  8. $tematy[$i][date] = $arrRow[date];
  9.  
  10. $i++;
  11. }
  12.  
  13. $i = 0;
  14.  
  15. $strQuery = &#092;"SELECT id, tresc, date, post FROM \".$cfg['mysql_prefix'].\"posts_replay WHERE tresc LIKE '%\".$_POST['search'].\"%' ORDER BY date\";
  16. $resResult = mysql_query($strQuery);
  17. while($arrRow = mysql_fetch_assoc($resResult))
  18. {
  19. $odpowiedzi[$i][id]  = $arrRow[id];
  20. $odpowiedzi[$i][date] = $arrRow[date];
  21. $odpowiedzi[$i][post] = $arrRow[post];
  22.  
  23. $i++;
  24. }
  25.  
  26. ?>


I chodzi mi teraz o to zeby wyswietlic liste tematow ($tematy) w kolejnosci chronologicznej, ale z uwzglednieniem odpowiedzi ($odpowiedzi), czyli tak jak w liscie tematow np. w phpBB. $odpowiedzi[$i][post] to ID postu ktorego tyczy sie odpowiedz. Moglby mi ktos pomoc jakby to zrobic, bo ja juz zglupialem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
wallace
post
Post #2





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Kraków / Będzin

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


najprościej to chyba wyciągnąć jednym zapytaniem stosując złączenia tablic, zakładam że kolumna 'post' w tablicy 'post_replay' odpowiada 'id' z tablicy 'posts'.

  1. SELECT posts.id, posts.tytul, IFNULL(MAX(post_replay.date), posts.date) AS DATA FROM posts LEFT JOIN post_replay ON post.id = post_replay.post WHERE (posts.tresc LIKE '%".$_POST['search']."%') OR (posts.tytul LIKE '%".$_POST['search']."%') OR (post_replay.tresc LIKE '%".$_POST['search']."%') ORDER BY post_replay.date, post.date GROUP BY posts.id


jeśli się gdzieś nie pomyliłem i dobrze Cię zrozumiałem, a dochodzi 4 więc jest to wielce prawdopodobne (;
to powinno działać.

a tak po za tym trochę źle zorganizowałeś te tabele, w jednej powinieneś mieć same tematy, a w drugiej same posty.

Ten post edytował wallace 12.12.2004, 04:06:48
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: 14.09.2025 - 20:50