saber hacia que pagina parte el usuario, el contrario de HTTP_REFERER?

Iniciado por Graphixx, 30 Diciembre 2010, 21:34 PM

0 Miembros y 1 Visitante están viendo este tema.

Graphixx

COdigo del referer:
Código (php) [Seleccionar]
<?php
$url
=$_SERVER['HTTP_REFERER'];
echo 
'<strong>'."viene de(ruta completa): ".'</strong>'.$_SERVER['HTTP_REFERER'].'<br />';

preg_match'@^(?:http://)?([^/]+)@i'$_SERVER['HTTP_REFERER'], $matches );
$host $matches[1]; 

echo 
'<strong>'."viene de(dominio): ".'</strong>'.$host;
?>

Alguien sabe como optener hacia que pagina parte el usuario?, el contrario de HTTP_REFERER....?

Todo hace parte de un super contador de visitas que estoy programando, llevo esto:
"Super contador de Visitas en PHP"=300MB SQL+4 millones de registros+Scripts

La idea es lograr algo como esto:
http://live.feedjit.com/live/sistemasycontroles.net/0/

SI se fijan marcan con flechas verdes los ingresos y con flechas rojas las "salidas" y hacia donde partio el usuario, como lo logran ?
Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx
Mi blog

~ Yoya ~

El referer indica de donde vienes y el contrario seria a donde irías no, que seria algo imposible de saber pero quizás predecible... Piensa que si el usuario esta en tu web y va a google no tendrás forma de saber que fue a google.
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.

Feedeex

Pienso que no es posible si se sale de tu web, ya que no tendrás control de hacia donde puede ir porque tu código ya no correrá.

Graphixx

Si es que lo que yo quiero saber, es cuando le da a un enlace sea de publicidad, o un hipervinculo en el cuerpo de mi web, a cual de todos los enlaces le dio clic, por cual partio.... vale.
Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx
Mi blog

Feedeex

Ah.. lo del hipervínculo en tu web se puede hacer, con cookies. Lo de publicidad lo dudo mucho ya que, como dije anteriormente, se sale de tu web y ya no podés correr ningún tipo de código.

Graphixx

La idea es lograr algo como esto:
http://live.feedjit.com/live/sistemasycontroles.net/0/

SI se fijan marcan con flechas verdes los ingresos y con flechas rojas las "salidas" y hacia donde partio el usuario, como lo logran ?
Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx
Mi blog

Feedeex

Sin un script del lado del cliente dudo que se pueda, aún con cookies. No entiendo bien la página.
Si fuese un enlace de tu web podrías hacer algo como:

a.php
<a href="asd.php">Go to ASD</a>

asd.php
<?php
$_COOKIE
['arrive_pag'] = "asd.php";
header("Location: a.php");


En a.php clickea el enlace y va a asd.php, en asd.php se guarda un valor en una cookie, retorna a a.php  ahi el valor se guarda.
Pero habría que ver el funcionamiento de esa página, porque que devuelva la página que iré a visitar es prácticamente imposible, eso solo esta en mi mente, y quizás ni siquiera eso.

Graphixx

Pero este script al agregarlo al index de la pagina, guarda y almacena hacia que enlaces de los listados en la pagina, partio el usuario, sin necesidad de agregar nada mas.
http://live.feedjit.com/live/sistemasycontroles.net/0/

como lo hacen ?
Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx
Mi blog

Belem

Yo hice algo parecido alguna vez, el truco consitia masomenos en esto:

Cuando el user entra a mi Web verifico con un SESSIONID/cookie, si es  la primera pagina de mi dominio que visita, de ser asi le genero una sesion con un ID unico y la página de la que vino (HTTP_REFERER).

Suponiendo que en mi Web hay un boton, texto o imagen que dice: Ir a Google, en el enlace yo tenia algo como esto:

<a href="out.php?o=google" >Ir a Google</a>

Observar que cuando el usuario le daba clic al enlace realmente lo llevo a out.php, en el cual tenia código que guardaba el ID de sesión generado cuando el user abre por primera vez una page de mi dominio, la pagina de la que vino y el id del vinculo (en este caso google).

Para presentar las estadisticas ponia cada ID de sesion como un user diferente.
[ *BELEM * ]

Graphixx

La cosa es que por ejemplo ese plugin de feedjit con solo pegar el script en la barra de menus lateral de cualquier website optiene esos datos sin tener que modificar todos los enlaces de la web:

COdigo del plugin feedjit generico:
<script type="text/javascript" src="http://feedjit.com/serve/?vv=693&amp;tft=3&amp;dd=0&amp;wid=46aa56b173f8da0a&amp;pid=0&amp;proid=0&amp;bc=FFFFFF&amp;tc=000000&amp;brd1=012B6B&amp;lnk=135D9E&amp;hc=FFFFFF&amp;hfc=2853A8&amp;btn=C99700&amp;ww=300&amp;wne=10&amp;wh=Live+Traffic+Feed&amp;hl=0&amp;hlnks=0&amp;hfce=0&amp;srefs=0&amp;hbars=0&amp;went=10"></script><noscript><a href="http://feedjit.com/">Feedjit Live Blog Stats</a></noscript>

fuente: http://feedjit.com/freeLiveTrafficFeed/#getOther

EL plugin para wordpress y joomla va asi:
Código (php) [Seleccionar]

<?php
/**
 * @package Feedjit
 * @author Feedjit Inc.
 * @version 1.0.2
 */
/*
Plugin Name: Feedjit Live Traffic Feed
Plugin URI: http://feedjit.com/
Description: Feedjit's Live Traffic Feed shows your recent visitors in your blog side-bar. Click the "Watch in Real-Time" link at the bottom to watch your visitors arrive on your site in real-time, see where they came from, what browser and operating system they're running, which page they land on and what they click to leave. 
Author: Feedjit Inc.
Version: 1.0.2
Author URI: http://feedjit.com/
*/
function feedjit_version(){ return '1.0.2'; }
function 
feedjit_widget(){
$o get_option('feedjit_options');
echo '<script type="text/javascript" src="http://feedjit.com/serve/?' 
'wid=44ac2f273820bae8' 
'&amp;pid=0' 
'&amp;proid=0' 
'&amp;vv=693' 
'&amp;dd=' 
'&amp;bc=' $o['backgroundColor'] . 
'&amp;tc=' $o['textColor'] .
'&amp;brd1=' $o['borderColor'] . 
'&amp;lnk=' $o['linkColor'] . 
'&amp;hc=' $o['headingColor'] .
'&amp;hfc=' $o['headerFooterColor'] .
'&amp;btn=' $o['buttonColor'] .
'&amp;ww=' $o['width'] .
'&amp;tft=3' .
'"></script><noscript><a href="http://feedjit.com/">Feedjit Live Traffic Feed</a></noscript>';
}
function 
feedjit_control(){
$o get_option('feedjit_options');
if($_POST['fj_dataSent']){
foreach(array('width''backgroundColor''textColor''headingColor''borderColor''linkColor''headerFooterColor''buttonColor') as $key){
$fjkey 'fj_' $key;
$o[$key] = $_POST[$fjkey];
}
update_option('feedjit_options'$o);
}
echo(
'<input type="hidden" name="fj_dataSent" value="1" /><table border="0" cellpadding="2" cellspacing="0">' .
'<tr><td>Width in pixels:</td><td><input type="text" name="fj_width" value="' $o['width'] . '" size="3" /></td></tr>' .
'<tr><td>Background color:</td><td><input class="feedjitColor" type="text" name="fj_backgroundColor" value="' $o['backgroundColor'] . '" size="6" /></td></tr>' .
'<tr><td>Text color:</td><td><input class="feedjitColor" type="text" name="fj_textColor" value="' $o['textColor'] . '" size="6" /></td></tr>' .
'<tr><td>Heading color:</td><td><input class="feedjitColor" type="text" name="fj_headingColor" value="' $o['headingColor'] . '" size="6" /></td></tr>' .
'<tr><td>Border color:</td><td><input class="feedjitColor" type="text" name="fj_borderColor" value="' $o['borderColor'] . '" size="6" /></td></tr>' .
'<tr><td>Link color:</td><td><input class="feedjitColor" type="text" name="fj_linkColor" value="' $o['linkColor'] . '" size="6" /></td></tr>' .

'<tr><td>Header/Footer:</td><td><input class="feedjitColor" type="text" name="fj_headerFooterColor" value="' $o['headerFooterColor'] . '" size="6" /></td></tr>' .
'<tr><td>Button color:</td><td><input class="feedjitColor" type="text" name="fj_buttonColor" value="' $o['buttonColor'] . '" size="6" /></td></tr>' .

'</table>' .
'<script type="text/javascript">jscolor.init();</script>'


);
}
function 
feedjit_loaded(){
feedjit_setDefaultOpts();
$widget_ops = array('classname' => 'Feedjit''description' => "Feedjit Live Traffic Feed." );
wp_register_sidebar_widget('feedjit_widget''Feedjit''feedjit_widget'$widget_ops);
register_widget_control('feedjit_widget''feedjit_control');
}
function 
feedjit_setDefaultOpts(){
$defaults = array(
'width' => 183,
'backgroundColor' => 'FFFFFF',
'textColor' => '000000',
'headingColor' => 'FFFFFF',
'borderColor' => '012B6B',
'linkColor' => '135D9E',
'headerFooterColor' => '212A3B',
'buttonColor' => '1F9937',
);

$o get_option('feedjit_options');
$missing false;
if(! $o){
$missing true;
} else {
foreach(array_keys($defaults) as $k){
if((! isset($o[$k])) && (! preg_match("/(?:hideLogo|hideLinks|wHead)/"$k)) ){
$missing true;
break;
}
}
}
if($missing){
update_option('feedjit_options'$defaults);
}
}
function 
feedjit_head(){
echo '<script type="text/javascript">var feedjit_pid="0"; var feedjit_wid="44ac2f273820bae8"; var feedjit_proid="0"; var feedjit_version="1.0.2";</script><script type="text/javascript" src="http://feedjit.com/js/wp/wp.js"></script>';
}

add_action('plugins_loaded','feedjit_loaded');
add_action('admin_head''feedjit_head');
Nada tiene fin solo hay pequeñas pausas, pausas que determinan el comienzo de otros. Graphixx
Mi blog