Kolla vilken sida man kom ifrån (PHP)

Permalänk
Testpilot

Kolla vilken sida man kom ifrån (PHP)

Jag har letat som en tok överallt: forum, php.net och andra php-sidor men inte hittat vad kommandot är som kollar vilken sida besökaren kom ifrån, altså så att man kan veta vart besökarna var innan dom kom till sin sida och på så sätt kolla vanligaste vägen folk hittar den på.

Hoppas någon kan hjälpa mig

Visa signatur

Kolla gärna in min RGB-LED-ljusstake i galleriet
[Gigabyte GA-Z97MX-Gaming 5][Intel Core i5 4690K][Corsair XMS3 16GB][Asus GeForce RTX 2060 Super Dual Evo OC]

Permalänk
Medlem

<?php echo $_SERVER[ 'HTTP_REFERER' ]; ?>

Visa signatur

Fame's a bitch, man

Permalänk
Testpilot

det verkar inte funka tyvärr, beror nog på servern. jag har en sida som jag hittade nån stans som listar alla kommandon: http://www.student.itn.liu.se/~kevda138/test/php-funk.php $_SERVER[ 'HTTP_REFERER' ] borde stå med eller hur?

Visa signatur

Kolla gärna in min RGB-LED-ljusstake i galleriet
[Gigabyte GA-Z97MX-Gaming 5][Intel Core i5 4690K][Corsair XMS3 16GB][Asus GeForce RTX 2060 Super Dual Evo OC]

Permalänk
Medlem

gör en sida som innehåller detta:

<pre>
<?php
print_r ($_SERVER);
?>
</pre>

sen gör du en annan sida med en länk till den förra, då bör den sidans adress stå med i den arrayn.

Visa signatur

Hej

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av hunden
det verkar inte funka tyvärr, beror nog på servern. jag har en sida som jag hittade nån stans som listar alla kommandon: http://www.student.itn.liu.se/~kevda138/test/php-funk.php $_SERVER[ 'HTTP_REFERER' ] borde stå med eller hur?

$_SERVER är en superglobal fördefinierad variabel, och finns alltså inte med i någon funktionslista.

Titta här istället:
http://se2.php.net/manual/en/reserved.variables.php#reserved....

Permalänk
Testpilot

nu funkar det, vet inte vad det var för fel förut, kanske skrev jag med små bokstäver, jag vet inte. Tack för hjälpen iallafall

Visa signatur

Kolla gärna in min RGB-LED-ljusstake i galleriet
[Gigabyte GA-Z97MX-Gaming 5][Intel Core i5 4690K][Corsair XMS3 16GB][Asus GeForce RTX 2060 Super Dual Evo OC]

Permalänk
Medlem

Det ska inte spela någon roll om du använder stora eller små bokstäver, troligtvis var det bara en felstavning eller så fanns det ingen data i HTTP_REFERER. Om användaren kommer från en säker sida ( SSL ) så skrivs ingenting till HTTP_REFERER-indexet.

Visa signatur

Fame's a bitch, man

Permalänk
Testpilot

även fast det är en unix-server som skiljer på små och stora tecken i filnamn? jag vet inte men skulle gissa på nåt sånt

Visa signatur

Kolla gärna in min RGB-LED-ljusstake i galleriet
[Gigabyte GA-Z97MX-Gaming 5][Intel Core i5 4690K][Corsair XMS3 16GB][Asus GeForce RTX 2060 Super Dual Evo OC]

Permalänk
Hedersmedlem

BeWMan: Konstanter är case sensitive, inte variabler. Alltså:

$_server['HTTP_REFERER'] är OK, men inte $_SERVER['http_referer']

Permalänk
Medlem

Japp, jag har kommit på det nu. Gnäll inte på mig, det var massor av år sedan jag knackade PHP.

Visa signatur

Fame's a bitch, man

Permalänk
Medlem

För övrigt intressant kuriosa att "referer" är en felstavning (referrer), men korrekt php. Det är väl av historiska skäl, på nåt vänster?

Lite som Smiths-låten "Cemetry Gates".

Permalänk
Hedersmedlem

Ni får ju stoppa mig när jag snackar så mycket skit som jag precis gjorde

För det första så är 'HTTP_REFERER' inte en konstant utan en sträng och för det andra så stämmer det jag sa om variabler och konstanter inte. Jag testade precis på min burk och både variabelnamn och konstanter är case sensitive. Följande kod fungerar t.ex. utan problem:

error_reporting(E_ALL);
$test = array('test' => 'test', 'TEST' => 'TEST');
$TEST = array_reverse($test);

Jag tvekar också på att detta skulle ha något med plattformen det körs på att göra. Att olika filsystem varierar vad gäller känsligheten för versaler och gemena är en sak, men varför skulle ett programspråk göra det?

Permalänk
Testpilot

Jag vet inte, jag gissade bara jag kan inte sånt här, då hade jag inte frågat

Visa signatur

Kolla gärna in min RGB-LED-ljusstake i galleriet
[Gigabyte GA-Z97MX-Gaming 5][Intel Core i5 4690K][Corsair XMS3 16GB][Asus GeForce RTX 2060 Super Dual Evo OC]