Capturar datos en php

Ante todo enhorabuena y muchas gracias por la labor que realizáis.
Verás tengo una página web y tengo un contador, de ese contador captura de cada visita la hora, la fecha y la ip, pero también tengo que capturar su procedencia, es decir si procede de google, o si procede de la página que sea, me había hablado de poner SERVER['HTTP_REFERER']; pero no me lo dice, también me gustaría saber su proveedor de internet es decir de donde sale (por ejemplo staticIP.rima-tde.net), algo como contadorplus.

2 Respuestas

Respuesta
1
Te pego una función que he utilizado en alguna web para guardar estadísticas:
(Puedes ver el array de una variable global así: print_r(tiny_mce_markerSERVER);, así veras todos los psibles valores)
Código:
// Deteccion de la ip y del proxy
if (isset($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"]))
{
$ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
$array = split(",",$ip); $ip_proxy = $array[0];
$host = @gethostbyaddr($ip_proxy);
$ip_proxy = $HTTP_SERVER_VARS["REMOTE_ADDR"];
}
else
{
$ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];
$host = @gethostbyaddr($ip);
}
//URL de procedencia de la visita
$procedencia=$HTTP_REFERER;
// Detección del navegador
$agente = $HTTP_SERVER_VARS["HTTP_USER_AGENT"];
$navegador = "Otro";
if(ereg("Opera", $agente))$navegador = "Opera";
elseif(ereg("MSIE", $agente))$navegador = "MS Internet Explorer";
elseif(ereg("Lynx", $agente))$navegador = "Lynx";
elseif(ereg("WebTV", $agente))$navegador = "WebTV";
elseif(ereg("Konqueror", $agente))$navegador = "Konqueror";
elseif((ereg("Nav", $agente)) || (ereg("Gold", $agente)) || (ereg("X11", $agente)) || (ereg("Mozilla", $agente)) || (ereg("Netscape", $agente)))$navegador = "Netscape";
// Deteccion del sistema operativo
$so = "Otro";
if(ereg("Win", $agente))$so = "Windows";
elseif((ereg("Mac", $agente)) || (ereg("PPC", $agente))) $so = "Mac";
elseif(ereg("Linux", $agente))$so = "Linux";
elseif(ereg("FreeBSD", $agente))$so = "FreeBSD";
elseif(ereg("SunOS", $agente))$so = "SunOS";
elseif(ereg("IRIX", $agente))$so = "IRIX";
elseif(ereg("BeOS", $agente))$so = "BeOS";
elseif(ereg("OS/2", $agente))$so = "OS/2";
elseif(ereg("AIX", $agente))$so = "AIX";
Respuesta
1
En primer lugar intenta utilizar esta variable de la siguiente manera
echo $_SERVER['HTTP_REFERER'];
Ahora, para poder conocer el proveedor de internet que utiliza el usuario, no te sab´ria decir como trabajan todas las empresas en el mundo, ni tampoco se si existe un método para saber esta información.
Buena suerte.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas