Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Jak najlepiej uzyskać ilośc odpowiedzi do tematu ?, Tak jak na tym forum np.
grattz
post 19.02.2008, 21:03:16
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ę.


--------------------
Go to the top of the page
+Quote Post
windman
post 19.02.2008, 21:14:18
Post #2





Grupa: Zarejestrowani
Postów: 184
Pomógł: 13
Dołączył: 7.01.2008

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


Cytat(grattz @ 19.02.2008, 21:03:16 ) *
<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

Cytat(grattz @ 19.02.2008, 21:03:16 ) *
<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&nbsp; SET licznik='$licznik' tylko SET set 'licznik' = 'licznik' + 1

powinno działać

Ten post edytował windman 19.02.2008, 21:15:38
Go to the top of the page
+Quote Post
grattz
post 19.02.2008, 21:43:42
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 guitar.gif

Ten post edytował grattz 19.02.2008, 21:46:34


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 01:42