Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Postów na dzień!
kicaj
post 1.09.2003, 22:14:08
Post #1





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


Jak obliczyć ile postów na dzien wysyla dany user?

Wynik jak w PHPBB: postów 0.7 dziennie!


--------------------
PHP Developer

"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola
Go to the top of the page
+Quote Post
FiDO
post 1.09.2003, 22:35:29
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


W najprostszej postaci to wystarczy podzielic liczbe wszystkich postow przez ilosc dni ile dany klient jest zarejestrowany.

Nie jest to idealne, bo nie uwzglednia wakacji userow i takich tam winksmiley.jpg
Troche lepiej bylo by dzielic tylko przez liczbe dni, w ktorych cos pisal.
Go to the top of the page
+Quote Post
kicaj
post 2.09.2003, 06:19:57
Post #3





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


hmm? to jak policzyc liczbe dni? Mam pole w mysqlu 'datetime' ;/


--------------------
PHP Developer

"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola
Go to the top of the page
+Quote Post
zalew
post 2.09.2003, 11:46:57
Post #4





Grupa: Zarejestrowani
Postów: 407
Pomógł: 0
Dołączył: 24.10.2002
Skąd: warszawa

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


Cytat
W najprostszej postaci to wystarczy podzielic liczbe wszystkich postow przez ilosc dni ile dany klient jest zarejestrowany.
Nie jest to idealne, bo nie uwzglednia wakacji userow i takich tam winksmiley.jpg
Troche lepiej bylo by dzielic tylko przez liczbe dni, w ktorych cos pisal.

przeciez uczestnikiem forum sie jest czaly czas, nawet tylko czytajac... czyli jesli ktos by byl rok i codziennie 1 post to by mu wyszla srednia 1 dziennie, a jesli ktos bylby rok i tylko raz cos napisal to tez 1 dziennie smile.gif bez sensu

kicaj mktime() dat i obliczaj roznice...


--------------------
Go to the top of the page
+Quote Post
kicaj
post 2.09.2003, 15:24:58
Post #5





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


[php:1:9e8b921b97]<?php

$ostatni1 = mktime(0,0,0,9,2,2003);
$dzien1 = strftime("%d . %m . %Y", $ostatni1);
echo $dzien1;

echo "<br>";

$ostatni2 = mktime(0,0,0,8,2,2003);
$dzien2 = strftime("%d . %m . %Y", $ostatni2);
echo $dzien2;

echo "<br>";

$roznica = $dzien1 - $dzien2;

echo $roznica;
?>[/php:1:9e8b921b97]i nic sad.gif nie wiem czy dobrze robie?


--------------------
PHP Developer

"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola
Go to the top of the page
+Quote Post
jono
post 2.09.2003, 15:43:14
Post #6





Grupa: Zarejestrowani
Postów: 144
Pomógł: 0
Dołączył: 29.06.2003
Skąd: Wrocław

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


[php:1:50f02e1830]<?php

$ostatni1 = mktime(0,0,0,9,2,2003);
echo $dzien1;

echo "<br>";

$ostatni2 = mktime(0,0,0,8,2,2003);
echo $dzien2;

echo "<br>";

$roznica = $ostatni1 - $ostatni2;

echo ($roznica/86400);

?>[/php:1:50f02e1830]


--------------------
if(function_exists("zrozum_kobiete")){
echo "Niemożliwe!"; exit;}
Go to the top of the page
+Quote Post
FiDO
post 2.09.2003, 18:10:15
Post #7





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Cytat
przeciez uczestnikiem forum sie jest czaly czas, nawet tylko czytajac...  czyli jesli ktos by byl rok i codziennie 1 post to by mu wyszla srednia 1 dziennie, a jesli ktos bylby rok i tylko raz cos napisal to tez 1 dziennie smile.gif bez sensu

No w sumie smile.gif przy takim zalozeniu srednia nigdy nie bylaby nizsza niz 1, wiec lepiej to pierwsze (prostsze) rozwiazanie.

Liczbe dni mozna wyciagnac jedym zapytaniem z mysql'a:
[sql:1:98b38ccba5]
SELECT
FLOOR((UNIX_TIMESTAMP() - UNIX_TIMESTAMP(pole_z_data)) / 86400) dni
FROM tabela_z_data;
[/sql:1:98b38ccba5]

W zasadzie cala srednia mozesz wyciagnac odrazu z MySQL'a bez zbednych obliczen w php, ale nie bede Ci psul przyjemnosci z dojscia do tego jak smile.gif (niewielkie rozszerzenie powyzszego zapytania).
Go to the top of the page
+Quote Post
kicaj
post 4.09.2003, 21:44:12
Post #8





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


[php:1:7338c4e43e]<?php

$ostatni1 = mktime(0,0,0,9,2,2003);
$ostatni2 = mktime(0,0,0,3,2,2003);

$roznica = $ostatni1 - $ostatni2;

echo ($roznica/86400);

?>[/php:1:7338c4e43e]

Prosze zobaczyc jaki wynik!!!
Wyszła mi jakas liczba z przecinkiem itp!? :/

A drugi moj problem jak zamienic date, przechowuje w MySQLu jako DATETIME w postaci 0000-00-00 00:00:00 ?
?>[/php]


--------------------
PHP Developer

"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola
Go to the top of the page
+Quote Post
FiDO
post 4.09.2003, 23:43:55
Post #9





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Cytat
Prosze zobaczyc jaki wynik!!!
Wyszła mi jakas liczba z przecinkiem itp!? :/

No to co ze z przecinkiem... srednie raczej zawsze sa z przecinkiem, taka ich natura... zaokraglij sobie to do jednego czy dwoch miejsc po przecinku i bedziesz mial ladna srednia smile.gif

Cytat
A drugi moj problem jak zamienic date, przechowuje w MySQLu jako DATETIME w postaci 0000-00-00 00:00:00 ?

Zamienic na co? Zadales pytanie bez sensu...
Go to the top of the page
+Quote Post
adwol
post 5.09.2003, 00:17:01
Post #10





Grupa: Zarejestrowani
Postów: 691
Pomógł: 0
Dołączył: 6.08.2003

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


Cytat
Prosze zobaczyc jaki wynik!!!
Wyszła mi jakas liczba z przecinkiem itp!? :/

I co się tak tej liczby boisz? Taka sama jak każda inna. :wink:
To całkiem prawdopodobne że średnia jest niecałkowita (w końcu to iloraz).
Cytat
A drugi moj problem jak zamienic date, przechowuje w MySQLu jako DATETIME w postaci 0000-00-00 00:00:00 ?

Zamienić na co? Na time_t (czas uniksowy)?
[sql:1:6dcd0c7754]select unix_timestamp(data)[/sql:1:6dcd0c7754]
Go to the top of the page
+Quote Post
kicaj
post 5.09.2003, 06:16:29
Post #11





Grupa: Zarejestrowani
Postów: 1 640
Pomógł: 28
Dołączył: 13.02.2003
Skąd: Międzyrzecz/Poznań

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


zamienic czas z DATETIME na taki w mktime()


--------------------
PHP Developer

"Nadmiar wiedzy jest równie szkodliwy jak jej brak" Émile Zola
Go to the top of the page
+Quote Post
uboottd
post 5.09.2003, 09:49:09
Post #12





Grupa: Zarejestrowani
Postów: 384
Pomógł: 0
Dołączył: 3.04.2003
Skąd: Chorzow

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


Ale jak wynik z mktime() masz na mysli ? To wtedy jak Ci juz adwol napisal, a jesli masz na mysli tak jak argumenty do mktime to (szkic rozwiazania):

[php:1:3cfb3bd53b]
$res = mysql_query("select date_format(pole_z_data, '%Y:%c:%e:%k:%i:%s') as cos from tabela where cos_tam");
$ob = mysql_fetch_object($res);
list($rok,$miesiac,$dzien,$godzina,$minuta,$sekundy) = explode(":",$ob->cos);
[/php:1:3cfb3bd53b]
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: 20.06.2025 - 21:59