Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zapis informacji o userze, Czy to jest ok, a może jakieś sugestie?
Cysiaczek
post
Post #1





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Ot takie cosik mi się napisało w kilka minutek. Zadanie: Zliczanie odwiedzin na stronie dla najpopularniejszych przeglądarek, odświerzanie tylko dla nowych IP, możliwość rozbudowy. Chciałbym wiedzieć, czy można zrobić lepiej. (aha. nie ma cookies, ale to zamierzone)

  1. <?php
  2.  
  3. mysql_connect (&#092;"localhost\",\"root\",\"haslelko\") or die(\"nie można się połączyć z MySQL\");
  4. mysql_select_db (&#092;"print\") or die(\"Nie można znaleźć bazy szukanej\");
  5.  
  6. $userip=$_SERVER[REMOTE_ADDR];
  7. $wydostan=mysql_query(&#092;"SELECT * FROM pr_licz;\");
  8. while($rekord=mysql_fetch_array($wydostan))
  9. {
  10. $wejsc=$rekord[1];
  11. $ie=$rekord[2];
  12. $opera=$rekord[3];
  13. $firefox=$rekord[4];
  14. }
  15. $checkip=mysql_query(&#092;"SELECT * FROM pr_ipcheck WHERE ip='$userip'\");
  16. $isin=mysql_num_rows($checkip);
  17. if ($isin<1)
  18. {
  19. $wejsc++;
  20. $dodaj=mysql_query(&#092;"INSERT INTO pr_ipcheck (nr, ip, banned, data) VALUES ('', '$userip', '1', now())\");
  21.  
  22. //EXPLORER
  23. if (eregi(&#092;"MSIE\", $_SERVER[HTTP_USER_AGENT]) && !(eregi(\"Opera\", $_SERVER[HTTP_USER_AGENT])))
  24. {
  25. $ie++;
  26. $query=mysql_query(&#092;"UPDATE pr_licz SET wejsc='$wejsc', ie='$ie';\");
  27. }
  28.  
  29. //OPERA
  30. if (eregi(&#092;"Opera\", $_SERVER[HTTP_USER_AGENT]))
  31. {
  32. $opera++;
  33. $query=mysql_query(&#092;"UPDATE pr_licz SET wejsc='$wejsc', opera='$opera';\");
  34. }
  35.  
  36. //FIREFOX
  37. if (eregi(&#092;"firefox\", $_SERVER[HTTP_USER_AGENT]))
  38. {
  39. $firefox++;
  40. $query=mysql_query(&#092;"UPDATE pr_licz SET wejsc='$wejsc', mozilla='$firefox';\");
  41. }
  42. }
  43.  
  44. ?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
Darti
post
Post #2





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


ja bym wywalil zapytanie do bazy $wydostan i zrobil tak:
  1. <?php
  2. //np dla MSIE
  3. $query=mysql_query(&#092;"UPDATE pr_licz SET wejsc=wejsc+1, ie=ie+1;\");
  4. // itd
  5.  
  6. ?>

poza tym dorzucilbym w tabele pr_licz kolumnę o nazwie 'inne' (i odpowiedni kod do niej - pod else - na wypadek jak przegladarka nie wysle HTTP_USER_AGENT)

Pozdrawiam
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #3





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Dzieki. Faktycznie bedzie prosciej (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

funkcje inne mam, ale byla na dole skryptu i ni zypomnialem wkleic (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif)
Go to the top of the page
+Quote Post
FiDO
post
Post #4





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%)
-----


Najpierw sugerowalbym zapoznanie sie z jakimis stanardami kodowania i zastosowanie sie do nich. W miedzyczasie mozesz sie dowiedziec dlaczego przy podawaniu indeksow w postaci stringa do tablic powinno sie zapisywac je otoczone apostrofami/cudzyslowami.
Go to the top of the page
+Quote Post
Darti
post
Post #5





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


sprawdz funkcje get_browser() - zwraca do tablicy duzo fajnych rzeczy
Go to the top of the page
+Quote Post
SongoQ
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Ja mam kilka uwag:

- Tak jak pisal FiDO standard kodowania, w php.pl jest artukuł poświecony kodowaniu w php
- OOP
- komentarze
- to co napisałeś wykorzystuje tylko MySQL, dodanie innych.
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #7





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Dzięki za uwagi. Wykorzystam.

Aha. Nie będę tego robił dla innych baz, bo na serwerze mam Mysql'a i raczej nie puszcze tego nigdzie indziej. Po prostu wydajność przedewszystkim (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Nie zmienia to faktu, że uwaga jest słuszna (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
SongoQ
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Wazne jest to ze jesli ktos po Tobie ten kod przejmie zeby wiedziel co gdzie jest.
Go to the top of the page
+Quote Post
vala
post
Post #9





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 12.01.2005

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


czasami warto zrobic kaszane...a rozpisac sobie komentarze na kartce:)
= antyhakierowy syf:)
Go to the top of the page
+Quote Post
SongoQ
post
Post #10





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Jak zrobisz kaszane z kodem to osoba ktora wspolpracuje z Toba nic z tego nie bedzie wiedziec i bardzo duzo czasu spedzi nad tym zeby zrozumiec co gdzie jest. Bo kilku tygodniach ten antyhakerowy syf bedzie tez utrudnieniem dla Ciebie.
Go to the top of the page
+Quote Post
vala
post
Post #11





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 12.01.2005

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


o tym to ja wiem.....pracuje w ekipie...co prawda nie w php
ale innym jezyku:)
Go to the top of the page
+Quote Post
SongoQ
post
Post #12





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

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


Cytat
o tym to ja wiem.....pracuje w ekipie...co prawda nie w php
ale innym jezyku:)


No to troszeczke sie dziwuje ze takie cos napisales.
Go to the top of the page
+Quote Post
vala
post
Post #13





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 12.01.2005

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


nie ma sie co dziwic skoro moj team php=me alone (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 18.09.2025 - 16:03