Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano (edytowane)

Potrzebuję zaawansowanych statystyk forum. Chodzi dokładnie o ilość nowych postów w poszczególnych kategoriach i forach w zadanym przedziale czasu (miesięcznie)

Teoretycznie przy użyciu zaawansowanej wersji forumowej szukaczki można te dane wyciągnąć, ale "przepytanie" kilkadziesięciu for w kilkudziesięciu okresach czasowych zajmie wieki.

Może ktoś widział jakiegoś "gotowca" lub narzędzie zewnętrzne albo ma pomysł jak to zrobić?

Edytowane przez maxx
Opublikowano

Neee, przekopałem wszystkie dostępne modyfikacje - żadna nie daje wyników których potrzebuję :D

Statsy są nam potrzebne do użytku wewnętrznego, nie będziemy ich upubliczniać online (no chyba że jako screenshoty)więc metoda może być dowolna byle dawała wynik.

Tak siedzę i kombinuję, że najszybciej chyba by było jakby ktoś kumaty dopisał parę linijek kodu do stats.php

post-293-1271419001,8526_thumb.jpg

bo np. Topic Views pokazuje wyświetlenia tematów w poszczególnych forach, a Posts Stats - nowe posty. I można ustawić zakres dat. Jakby to "pożenić" albo dorobić nowy typ statystyk to by było to :blink:

Ja niestety jestem za cienki - help!

Opublikowano

Nom, może nieskładnie piszę, wybaczcie, przeziębiony strasznie jestem, ale postaram się to wyłożyć jaśniej.

Ideałem była by tabela: w wierszach fora, w kolumnach miesiące, a w komórkach ilość nowych postów.

Wynikiem końcowym ma być wykres ilości nowych postów z podziałem na fora w funkcji czasu - ale to już pikuś.

  • Manager
Opublikowano

Takiej to modyfikacji nie ma, a pisanie, że:

Tak siedzę i kombinuję, że najszybciej chyba by było jakby ktoś kumaty dopisał parę linijek kodu do stats.php

Zawsze mnie rozbawia do łez. Gdyby wszystko się dało napisać w paru linijkach.

Tak zwykle piszą ludzie którzy nigdy nie programowali, albo programowali na poziomie podstawowym. :blink:

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

Taaa, no i się dowiedziałem :blink:

Statystyki te są nam jednak potrzebne, więc sam siadłem i napisałem, o! :D

Ponieważ jednak dane wyjściowe będą dalej obrabiane w excelu postanowiłem sklecić niezależny skrypt, który będzie zapisywał wyniki do pliku csv.

I wszystko pięknie i ładnie śmiga, ale zaciąłem się na interwałach.

W tej postaci data (od-do) pobierana jest z formularza w osobnym pliku. I jak się ją podaje np. 2009-01-01 do 2009-01-31 wynikiem jest miesięczne zestawienie ilości postów w poszczególnych forach.

A chciałbym podać okres np. od 2009-01-01 do 2009-12-31 z interwałem miesięcznym i otrzymać wyniki z 12 miesięcy.

I nie mam pojęcia jak to zrobić.

Poniżej fragment skryptu (nie śmiać się - to mój pierwszy skrypt :a:)

 
/...tu jest łączenie z bazą i takie tam.../
$od=$_POST ['start'];
$do=$_POST ['koniec'];

$zapytanie="SELECT
 ibf_topics.tid, ibf_posts.pid, ibf_posts.topic_id, ibf_posts.post_date, ibf_topics.forum_id, ibf_forums.name, COUNT(ibf_posts.pid) AS licz
FROM
 ibf_topics
 INNER JOIN ibf_posts ON ibf_topics.tid = ibf_posts.topic_id INNER JOIN ibf_forums on ibf_forums.id = ibf_topics.forum_id
WHERE
 ibf_posts.post_date between UNIX_TIMESTAMP('$od') and UNIX_TIMESTAMP('$do')

GROUP BY
 ibf_topics.forum_id";

$wynik=mysql_query($zapytanie);
$num=mysql_numrows($wynik);

mysql_close();

$plik = fopen('baza.csv','a+'); 

echo "<b>Statystyki postów na FORUM</b><br><br>";
echo "w okresie od: $od  do: $do<br><br>";
$i=0;
while ($i < $num) {

$forum=mysql_result($wynik,$i,"forum_id");
$fname=mysql_result($wynik,$i,"name");
$posty=mysql_result($wynik,$i,"licz");

fputs($plik,"$od ;");
fputs($plik,"$do ;");
fputs($plik,"$forum ;");
fputs($plik,"$fname ;");
fputs($plik,"$posty ;");
fputs($plik, "\n");



/* echo "ID forum: $forum FORUM: $fname POSTOW: $posty<br>"; */
$i++;
}
fclose($plik);
echo "GOTOWE";
/... tu są różne inne bajery: pobieranie pliku, kasowanie zawartości itepe.../

  • Manager
Opublikowano

Pobierając dane z całego okresu ( roku ) sprawdzaj datę w jakim zakresie się zawiera i dodawaj poszczególne rekordy do wielowymiarowej tablicy ( tablica w tablicy ), gdzie indeksami będą poszczególne numery miesiąca. Wiadomo, że trzeba dodać również jakiś znacznik na te indeksy inkrementujący tylko w podanych zakresach ( 1-12 ).

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.