Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql]Scalanie podobnych rekordow, Dziwne zapytanie
_Stachu
post
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 1.02.2005

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


Zrobilem sobie skrypt statystyki ktory do jednej tabeli zapisuje uzytkownikow z ich danym (geoip, ip, przegladarka, komputer...), a do drugiej pokolei strony na ktorych chodza oraz ($_SERVER["HTTP_REFERER"]).

W panelu wyswietlam referentow w nastepujacy sposob:
  1. <?php
  2. $zap = $sql->zapytaj(&#092;"SELECT DISTINCT strona_od FROM statystyki_strony WHERE strona_od != '' ORDER BY start DESC LIMIT 48\");
  3. while($r = $sql->tablica($zap))
  4. {
  5. $zap2 = $sql->zapytaj(&#092;"SELECT COUNT(strona_od) FROM statystyki_strony WHERE strona_od = '$r[0]'\");
  6. $aa = $sql->wiersz($zap2);
  7.  
  8. echo &#092;"<a href=\"$r[0]\" target=\"_blank\">$r[0]</a>[{$aa[0]}]<br />\";
  9.  
  10. }
  11.  
  12. ?>


W tym problem ze skrypt pokazuje mi kazda strone o innym adresie tzn. www.google.pl http://google.pl to osobne adresy. Tak samo jest jak ktos wyszukiwal w google.

Czy jedynym rozwiazaniem jest zapisywanie do tabel samego hostu? Moze da sie zapisac jakosc inaczej zapytanie?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
Skobi
post
Post #2





Grupa: Zarejestrowani
Postów: 174
Pomógł: 1
Dołączył: 19.02.2004

Ostrzeżenie: (10%)
X----


Witam,

Moim zdaniem, najlepszym rozwiazaniem jest zapisywanie samego hosta poniewaz dane ktore wystepuja w kazdej nazwie mozesz dopisac. Sam w niektorych projektach borykalem sie z tego typu bledami co w rezultacie dalo mniejsza wydajnosc aplikacji.
Lecz jezeli chcesz dalej w ten sposob zapisywac to mozesz to wyszukac tak:

  1. SELECT COUNT(strona_od)
  2. FROM statystyki_strony WHERE strona_od LIKE '%".$r[0]."%';


co w rezultacie wyszuka wszystkie wystapienia danej frazy w polu. np.:

Tabela statystyki_strony:

strona_od
---------------------
www.google.pl
www.statix.pl

  1. <?php
  2.  
  3. $r[0] = &#092;"statix.pl\";
  4.  
  5. ?>


to zapytanie zwróci: 1
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 Aktualny czas: 20.08.2025 - 05:22