Script care scrie cati vizitatori au fost pana acuma

Ai o întrebare legată de PHP? Incercăm să îi găsim soluţie. Sau poate doar vrei să publici un cod interesant.

Moderatori: Zamolxe, Moderatori

Avatar utilizator
Tudy
Senior Member
Mesaje: 506
Membru din: Mie Sep 22, 2004 7:00 pm
Localitate: Cluj-Napoca

Script care scrie cati vizitatori au fost pana acuma

Mesajde Tudy » Mie Noi 03, 2004 7:03 pm

Buna. As avea nevoie de un script care scrie cati vizitatori au fost pana acuma, din data in care l-ai pus, pe site. Deci, nu contor, dar tot contor cred ca i se spuna. Sa scrie elegant intr-o pagina de pe site-ul meu.

Merci si sper ca m-ati inteles.

ps : Cum este pe http://dhost.info/dojo/portal/ (Acolo jos la total hits)



mihnea sim
Average Member
Mesaje: 149
Membru din: Vin Aug 20, 2004 9:15 pm
Localitate: Alexandria
Contact:

Mesajde mihnea sim » Joi Noi 04, 2004 7:21 am

Sa ai in index o functie care sa se execute in modul urmator:
testeaza daca userul are cookie de la tine
- daca nu are, ii lasi un cookie si il si numeri
"o istorie aberanta si injusta copleseste fiinta si o arunca afara din lumea ei"

Avatar utilizator
Tudy
Senior Member
Mesaje: 506
Membru din: Mie Sep 22, 2004 7:00 pm
Localitate: Cluj-Napoca

Mesajde Tudy » Joi Noi 04, 2004 4:13 pm

Nu am inteles. Care-i codul pentru asa ceva ? Merci.

mihnea sim
Average Member
Mesaje: 149
Membru din: Vin Aug 20, 2004 9:15 pm
Localitate: Alexandria
Contact:

Mesajde mihnea sim » Vin Noi 05, 2004 8:16 pm

Iti zic de acuma' ca nu stiu daca am lucrat bine cu cookieurile dar restul e bine sigur:

[php]
function user($ip)
{
if(!$cookie)
{
set_cookie($cookie,$ip);
//si il si numeri in baza de date daca nu cumva nu exista deja acel IP
if (!mysql_num_rows(mysql_query("select * from visited where ip = '".$ip."'")))
return mysql_query("insert into visited(ip) values('".$ip."')");
else return false;
}
else return false;
}

user(getenv ("REMOTE_ADDR"));
[/php]
Astept intrebari. Retinerea IP-ului e optionala, dar daca tot faci o treaba, macar sa o faci ca lumea.. Dupa cum ai vazut functia de mai sus, doar efectueaza numaratoarea.. presupun ca stii sa faci afisarea nr de vizitatori (doar conjugi tabelul visited cu un select si numeri cu mysql_num_rows() rezultatul)

Functia are o functionalitate 99%. Adica, daca userul e pe dial-up, asta inseamna ca va avea un Ip diferit la fiecare conectare DAR il "prindem" cu un cookie. Daca insa userul isi sterge cookieurile, atunci il vom "prinde" prin IP. Numai userii care au si dial-up si isi mai sterg si cookieurile des vor fi contorizati de mai multe ori.
"o istorie aberanta si injusta copleseste fiinta si o arunca afara din lumea ei"

Avatar utilizator
smileybos
Average Member
Mesaje: 96
Membru din: Mie Aug 25, 2004 11:01 pm

Mesajde smileybos » Mar Dec 07, 2004 8:05 pm

uite ce-mi apare mie:
Fatal error: Call to undefined function set_cookie() in c:\wamp\www\backup\indez.php on line 46
si linia 46 este:
[php]
set_cookie($cookie,$ip); [/php]

MasterPhoton
Senior Member
Mesaje: 437
Membru din: Joi Mar 06, 2003 7:03 pm

Mesajde MasterPhoton » Mar Dec 07, 2004 8:09 pm




Avatar utilizator
smileybos
Average Member
Mesaje: 96
Membru din: Mie Aug 25, 2004 11:01 pm

Mesajde smileybos » Mar Dec 07, 2004 8:21 pm

inca 2 erori:
Warning: Cannot modify header information - headers already sent by (output started at c:\wamp\www\backup\indez.php:9) in c:\wamp\www\backup\indez.php on line 46

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\wamp\www\backup\indez.php on line 48

48- [php]if (!mysql_num_rows(mysql_query("select * from visited where ip = '".$ip."'")))[/php]

daca-i de baza de date, cum se creaza?

mihnea sim
Average Member
Mesaje: 149
Membru din: Vin Aug 20, 2004 9:15 pm
Localitate: Alexandria
Contact:

Mesajde mihnea sim » Mar Dec 07, 2004 8:38 pm

pai ip-urile le stochezi precum stringuri in campuri declare de forma varchar(15). Si atunci nu vad de ce ti-ar da eroare la sql. Prima eroare vine in schimb de la faptul ca ai apelat o functie ce poate fi apelata strict in header. (spre exemplu cum operezi cu session_start() pe care o apelezi inainte de orice alt output catre browser.) Cred ca este vorba de setarea cookieului pe care nu ai facut-o unde trebuie.
"o istorie aberanta si injusta copleseste fiinta si o arunca afara din lumea ei"

Avatar utilizator
Tudy
Senior Member
Mesaje: 506
Membru din: Mie Sep 22, 2004 7:00 pm
Localitate: Cluj-Napoca

Contor cu baze de date...

Mesajde Tudy » Dum Apr 24, 2005 10:42 am


Avatar utilizator
ctiniancu
PHPRomania Supporter
Mesaje: 8
Membru din: Mie Mar 23, 2005 1:11 pm
Localitate: Prahova
Contact:

Mesajde ctiniancu » Dum Apr 24, 2005 9:36 pm


ionutsturzoiu
PHPRomania Supporter
Mesaje: 5
Membru din: Joi Feb 10, 2005 4:55 pm

Mesajde ionutsturzoiu » Mie Mai 25, 2005 8:58 pm

dar care e problema sa stochezi ip-urile in db? :oops:

Avatar utilizator
Tudy
Senior Member
Mesaje: 506
Membru din: Mie Sep 22, 2004 7:00 pm
Localitate: Cluj-Napoca

Mesajde Tudy » Mie Mai 25, 2005 9:25 pm

Pai nu ar fi o problema sa stochez IP-urile intr-un db. Doar ca ar mai fi una alta ... trebuie ca dupa 24 ore sa poata sa mai adauge la un ip inca +1 la contor, nu? Si ... sunt multe astfel de scripturi gata facute... de accea am intrebat de unul...


Înapoi la “Cod PHP”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 19 vizitatori