vormen voor de referrer?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Altin

Altin

28/08/2007 00:37:00
Quote Anchor link
Hey,
Ik ben een klein linkexchange script aan het maken.
Het script zet eigenlijk gewoon all referrers in de database mbv $_SERVER['HTTP_REFERER']
En ik kies degen die op mijn linkpagina komen te staan.
Zo kan ik ook zien hoeveel bezoekers ik krijg van elke referrer.
Nu wil ik niet dat bv http://www.google.be en http://google.be allebei in de database staan, omdat het uiteindelijk dezelfde site is.
Dus ben ik alles aan het opslaan als "google.be" - domeinnaam zonder http of www.
Nu vroeg ik mij af in welke vorm de referrer allemaal kan zijn.
er is http, https, en beide met www of zonder.
Zijn er nog?
Ik ben de verbodige delen aan het weg doen met str_replace()
Is er een bestaande functie voor ofzo?
Ook de subpagina wordt weggedaan.

Dit is wat ik heb:

// Get referrer[linebreak]$ref = $_SERVER[HTTP_REFERER];[linebreak]$ref = str_replace(http://www., , $ref);[linebreak]$ref = str_replace(https://www., , $ref);[linebreak]$ref = str_replace(http://, , $ref);[linebreak]$ref = str_replace(https://, , $ref);[linebreak][linebreak]// remove http://wwww. or subpages[linebreak]$split_domain = explode("/", $ref);[linebreak]$domain = $split_domain[0];

Moet er nog iets bij zodat ik altijd ALLEEN de domeinnaam heb?

Bij voorbaat dank!
 
PHP hulp

PHP hulp

21/11/2024 23:10:48
 
Danny Roelofs

Danny Roelofs

28/08/2007 03:11:00
Quote Anchor link
Als je zo te werk zal gaan, loop je tegen allerlei problemen aan die je steeds maar moet gaan afvangen, ik heb hier denk ik wel een alles-in-een oplossing voor je:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$array_urls
= array
(
 'http://www.phphulp.nl/index.php',
 'www.teveel.phphulp.nl/index.php?aaar=1',
 'www.www.teveel.phphulp.nl/postvak/1',
 'geeen.www.phphulp.nl/index.php?daa=1&daaa=1&dat=1'
);
                        
foreach($array_urls as $url)
{

    preg_match("/^(http:\/\/)?([^\/]+)/i"    , $url,            $gevonden);
    preg_match("/[^\.\/]+\.[^\.\/]+$/"        , $gevonden[2],    $gevonden);
    echo "Gevonden domein naam is ".$gevonden[0]."<br />";
}

?>


En als je dat array gebeuren weg laat, wat ik even ter demonstratie heb gedaan zodat je diverse url's kunt zien worden gefilterd komt het neer op:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$url
= "http://www.website.nl";
preg_match("/^(http:\/\/)?([^\/]+)/i"    , $url,            $gevonden);
preg_match("/[^\.\/]+\.[^\.\/]+$/"        , $gevonden[2],    $gevonden);

echo "Gevonden domein naam is ".$gevonden[0]."<br />";
?>
Gewijzigd op 01/01/1970 01:00:00 door Danny Roelofs
 
Altin

Altin

28/08/2007 19:21:00
Quote Anchor link
Maar het kan ook handig zijn om sudomenen op te slaan. Denk maar aan sites die je toelaten gratis een log te hosten, op een subdomein.
Daarom zou ik die toch willen opslaan.
Ik ben trouwens de preg_match tutorial aan het lezen, omdat je die functie gebruikt in de code, en ik snap niet waarom je de haakjes gebruikt de eerst keer dat je de functie oproept.

Kan je dat uitleggen aub?

Bedankt!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.