![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 22.06.2003 Skąd: Ostrołęka Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Potrzebuję napisac skrypt który pokaże mi ilość wpisywanych komentarzy na dobę. Nie wiem jednak jak się do tego zabrać, dlatego zwracam się o pomoc do Was. Plik z komentarzami jest tutaj: www.moja-ostroleka.pl/cutenews/data/comments.txt Bardzo proszę o pomoc, gdyż naprawe ie wiem od czego zacząć. Nie wiem jak explodować ten plik i jak czytać poszczególne wpisy gdyż tam jest kilka wpisów w jednej linii. I nie wiem czy trzeba zawsze przeszukiwać cały plik czy tylko do pewnego momentu - daty? Proszę pomóżcie. -------------------- Pozdrawiam
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 22.06.2003 Skąd: Ostrołęka Ostrzeżenie: (0%) ![]() ![]() |
Na innym forum podsunięto mi taki kod:
[php:1:50d7668f53]<?php function debug($t){ print "<pre>"; print_r($t); print "</pre>"; } function ilosc_wpisow($filename) { # gdzie filename to nazwa pliku # w twoim wypadku `comments.txt` $file = @file($filename) or die("Nie moglem otworzyc pliku $filename"); for ($i=0; $i<count($file); $i++) { $wiersz = explode("|>|",$file[$i]); if ($wiersz[0]) { $r = date("Y",$wiersz[0]); $m = date("n",$wiersz[0]); $d = date("j",$wiersz[0]); $time[$r][$m][$d] += 1; } } debug($time); } ilosc_wpisow("comments.txt"); ?> [/php:1:50d7668f53] lecz... sam autor tego napisał: "hmm, nie rozumiem, niby wszystko ok a suma liczb ciagle wynosi tyle ile wpisow w calym pliku..." Rzeczywiście skryt nie działa. Efekt działania tego kodu możecie zobaczyć tutaj: www.moja-ostroleka.pl/cutenews/data/komentarze.php Poradźcie mi dlaczego ten kod może nie działać? -------------------- Pozdrawiam
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
Cytat Na innym forum podsunięto mi taki kod:[php:1:33eccc20d4]<?php Warunek taki mówi, że jeśłi tylko jest jakakolwiek data ( w tym przypadku), to trzeba dodać jeden.
if ($wiersz[0]) ?> [/php:1:33eccc20d4] Trzeba zrobić coś takiego:[php:1:33eccc20d4]<?php function debug( $mixVariable ) { echo '<pre>'; var_dump( $mixVariable ); echo '</pre>'; } /** * @return false or array * @param string $strCommentFile * @desc Funkcja oblicza ilosc komentarzy dla kazdego znalezionego dnia. */ function CountComments( $strCommentFile ) { if(!is_readable( $strCommentFile )) { return false; } $arrCounters = array(); $arrFile = file( $strCommentFile ); foreach ( $arrFile as $strRow ) { $arrRow = explode( '|>|', $strRow ); $strTestDate = date('Y-m-d', $arrRow[0]); if( isset( $arrCounters[$strTestDate] ) ) { $arrCounters[$strTestDate]++; } else { $arrCounters[$strTestDate] = 1; } } return $arrCounters; } $arrCounters = CountComments( 'comments.txt' ); debug( $arrCounters ); ?>[/php:1:33eccc20d4] -------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 22.06.2003 Skąd: Ostrołęka Ostrzeżenie: (0%) ![]() ![]() |
Hmm fajnie fajnie.. ale jak zrobić skrypt o którym pisałem? Wydaje mi się że nie debug jest zbędny... Czekam nadal na propozycje.
-------------------- Pozdrawiam
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarząd Postów: 3 503 Pomógł: 28 Dołączył: 17.10.2002 Skąd: Wrocław ![]() |
No przecież masz gotową, sprawdzoną fukcje, która zwróci albo FALSE albo tablice zawierającą ilości komentarzy z danym dniu, przy czym data jest indekxem tablicy.
Może jeszcze za Ciebie wkleić to do Twojego skryptu? -------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 22.06.2003 Skąd: Ostrołęka Ostrzeżenie: (0%) ![]() ![]() |
Cytat Może jeszcze za Ciebie wkleić to do Twojego skryptu?
Szczerze mówiąc to tak.. bo nie wiem jak to zrobić :| Z góry thx, jesli będziesz tak łaskawy. -------------------- Pozdrawiam
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 296 Pomógł: 0 Dołączył: 9.05.2002 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
W związku z tym, że sam plik komentarzy ma ok. 500 kB, proponuję stworzyć system komentarzy od nowa, zamiast obciążać skrypt dodatkowymi funkcjami. :wink:
-------------------- audaces fortuna iuvat!
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 22.06.2003 Skąd: Ostrołęka Ostrzeżenie: (0%) ![]() ![]() |
Cytat W związku z tym, że sam plik komentarzy ma ok. 500 kB, proponuję stworzyć system komentarzy od nowa, zamiast obciążać skrypt dodatkowymi funkcjami. :wink:
Chętnie bym sam się za to wziął ale na razie nie mam czasu zakuwać php i póki tego nie opanuję jestem zdany tylko na Waszą pomoc. -------------------- Pozdrawiam
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 296 Pomógł: 0 Dołączył: 9.05.2002 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
No to masz kod scanner'a. Wklej go gdziekolwiek na stronie.
-------------------- audaces fortuna iuvat!
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 19:51 |