![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 138 Pomógł: 0 Dołączył: 29.10.2006 Skąd: BB Ostrzeżenie: (0%) ![]() ![]() |
Napisałem sobie skromne forum. Chce żeby przy tematach wyświetlała sie ilość odpowiedzi na dany temat.
Jak to zrobić ? Myślałem nad tym aby jakaś funkcją wywołać/zliczyć wszystkie odpowiedzi do wątku ale na moj rozum to strasznie obciąży SQL. Drugi pomysł to przy dodawaniu odpowiedzi dodanie do zmiennej np.$odp+1.Ale tu jest jeszcze większy problem bo co jeśli osoba która wywoła skrypt będzie tak długo pisać ze w tym samym czasie będzie juz 10 odpowiedzi i zamiast do bazy dodać 11 (10+1) to doda 1 (0+1) kasując dodawanie poprzednich 10ciu. Proszę o jakieś sugestię. -------------------- |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 184 Pomógł: 13 Dołączył: 7.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
<BR>Myślałem nad tym aby jakaś funkcją wywołać/zliczyć wszystkie odpowiedzi do wątku ale na moj rozum to strasznie <B>obciąży SQL</B>.<BR> Tematy pewnie trzymasz w jednej tabeli a odpowiedzi w drugiej. Wyswietlajac tematy wysylasz zapytanie do tabeli z odpowiedziami i sprawdzasz ile jest odpowiedzi do tematu o id=id_tematu raczej tak się to robi <BR>Drugi pomysł to przy dodawaniu odpowiedzi dodanie do zmiennej np.<U><I>$odp</I></U>+1.Ale tu jest jeszcze większy problem bo co jeśli osoba która wywoła skrypt będzie tak długo pisać ze w tym samym czasie będzie juz 10 odpowiedzi i zamiast do bazy dodać 11 (10+1) to doda 1 (0+1) <B>kasując dodawanie poprzednich 10ciu</B>.<BR> Z tym też nie ma problemu, nie wysyłasz do bazy SET licznik='$licznik' tylko SET set 'licznik' = 'licznik' + 1 powinno działać Ten post edytował windman 19.02.2008, 21:15:38 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 138 Pomógł: 0 Dołączył: 29.10.2006 Skąd: BB Ostrzeżenie: (0%) ![]() ![]() |
Dzięki.
Wybrałem tą drugą opcję. Działa znakomicie. U mnie to wygląda tak.( Z racji nietypowości mojego forum tematy i odpowiedzi mam w jednej bazie a $id tyczy sie tutaj głownego tematu) Kod mysql_query("UPDATE baza SET odp=opd+1 WHERE id=(\"$id\")"); Ta opcja jest na pewno bardziej oszczędna. Dzięki ![]() Ten post edytował grattz 19.02.2008, 21:46:34 -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 01:42 |