1. W przypadku stałego licznika punktów robisz zapytanie SELECT COUNT(*) dla topic gdzie w topic masz id user'a jest równe temu co przetwarzasz (najlepiej relacją), a nie zmienną i mnożysz razy ilość punktów.
2. W tabeli topic robisz pole z punktami np. points i w rezultacie w pętli dodajesz z wszystkich wierszy do jednej zmiennej.
2. W tabeli topic robisz pole z punktami np. points i w rezultacie w pętli dodajesz z wszystkich wierszy do jednej zmiennej.