Referer og søgeord

Tags:    php

Jeg har en plan der går ud på at samle de søgeord der bruges når en besøgende henvises fra f.eks. Google.

Men hvordan gør jeg det nemmest?

Jeg går ud fra at jeg skal benytte noget i retning af $_GET eller $_REQUEST, men det er jo ikke nok i sig selv.

Typisk Google URL: http://www.google.com/search?hl=da&ie=UTF-8&q=ord&lr=

Hvis jeg opfanger URL'en med $_SERVER['HTTP_referer'], kan jeg så dele den op og kun tage enkelte informationer?

F.eks. $tekst = $_GET['g'];


Jeg har på fornemmelsen at jeg skal have fat i noget explode halløj, men det har jeg aldrig rørt ved før...


Derudover ønsker jeg også at finde domænet, hvilket burde kunne samles forholdsvis nemt med ovenstående. Altså en pæn udgave af refereren, f.eks. www.google.com.

Er der nogen der kan give mig et par tip på vejen?



5 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
Personligt ville jeg nok gøre noget i retning af:
Fold kodeboks ind/udKode 


.. Men om det virker for dig, det må du selv vurdere :)

En anden måde, med explode:
Fold kodeboks ind/udKode 


Jeg har ikke testet dem, men i teorien burde de virke.
--
Thus, I conclude

[Redigeret d. 26/09-04 02:12:03 af XyborX]



En hurtig søgning på google gav det her link:

http://www.webmasterworld.com/forum88/3875.htm

Der er et simpelt og et lidt mere avanceret eksempel.

MvH

Stefan Svensson
http://fusket.frac.dk



En hurtig søgning på google gav det her link:

http://www.webmasterworld.com/forum88/3875.htm

Der er et simpelt og et lidt mere avanceret eksempel.

MvH

Stefan Svensson
http://fusket.frac.dk



Nu viser det link til en betalingsside af en art, men jeg har fanget ideen. Jeg har kigget lidt på siden, og fundet lidt, men ikke nok. Desværre kunne jeg ikke lige umiddelbart finde det du henviser til, men evt. hvis du skriver hvad du har søgt på...?

Jeg er nu klar over at det sandsynligvis omhandler explode, parse_url og parse_str, men jeg er ikke den store haj til at tyde dokumentationen på php.net i en sådan grad at jeg kan stykke det ønskede sammen endnu.



Jeg havde desværre ikke nogen større succes med ovenstående, men efter at have rodet en del rundt inde på php.net og kigge lidt på diverse referer koder, fik jeg selv bikset følgende sammen:


$url = $_SERVER['HTTP_REFERER'];

if (eregi("google", $url))
{

preg_match("'q=(.*?)(&| )'si", " $url ", $keywords);

}

if (($keywords[1]!="") and ($keywords[1]!=" ")) {
$keywords=preg_replace("/\\+/"," ",$keywords[1]);
$keywords=eregi_replace("%2B"," ",$keywords);
$keywords=eregi_replace("%2E","\\.",$keywords);
$keywords=trim(eregi_replace("%22","\\"",$keywords));
$result=mysql_query("SELECT number FROM keywords WHERE keywords='$keywords' LIMIT 1");
$check=mysql_num_rows($result);

if ($check=="0") {
$new_row=mysql_query("INSERT INTO keywords (number, keywords) VALUES ('1','$keywords')");
} else {
$update=mysql_query("UPDATE keywords SET number=number+1 WHERE keywords='$keywords'");
}
}


(Kan ikke lige finde ud af at sætte det ind som kodeeksempel)

Der skal dog lyde et tak for forsøget...

[Redigeret d. 27/09-04 01:14:43 af Jens]

[Redigeret d. 27/09-04 01:17:24 af Jens]



Prøv at lege lidt med det de andre har sagt, og så kig evt på
http://dk2.php.net/manual/en/function.parse-url.php

mvh Bob



t