Pergunta

Eu entendo o básico de rastreamento de pixel, eu sou capaz de inserir um pixel que referências uma imagem no meu domínio de rastreamento para outros sites.

No entanto, como faço para incrementar que contagem de pixels real no meu domínio de acompanhamento? Existe algum tipo de log que me diz cada vez que a imagem pixel foi servido? Sou capaz de fazer algo como:

<img src="http://www.foo.com/serveImage/getImage.php?id=5123" />

, em seguida, ter a página getImage, servem-se a imagem e incremento baseado no id que foi aprovada em? ou há uma maneira melhor de conseguir isso?

Agradecemos antecipadamente.

Foi útil?

Solução

Se você quer saída de apenas um gif esta é uma maneira simples rápida, apenas certifique-se o seu script faz o resto não mostra nada antes ou depois:

header("Content-type: image/gif");
header("Content-length: 43");
$fp = fopen("php://output","wb");
fwrite($fp,"GIF89a\x01\x00\x01\x00\x80\x00\x00\xFF\xFF",15);
fwrite($fp,"\xFF\x00\x00\x00\x21\xF9\x04\x01\x00\x00\x00\x00",12);
fwrite($fp,"\x2C\x00\x00\x00\x00\x01\x00\x01\x00\x00\x02\x02",12);
fwrite($fp,"\x44\x01\x00\x3B",4);
fclose($fp);

Outras dicas

Sim, você tem a idéia certa.

Você dá cada site ou página uma identificação única, que é então passada na imagem src. Assim, no seu exemplo, a ID é 5123.

Em seu getImage.php roteiro então usar este ID para incrementar o banco de dados (ou no entanto você grava os dados) e retornar qualquer imagem que você quiser. Se você deseja que a imagem que você voltar para mostrar o número de visitas que você pode criar uma imagem em tempo real com o GD extensão -. consulte o manual do PHP para mais informações sobre ele

Este é meu código trilha:

<?php

$id = $_GET['site_id'];

// do track

$imageFile = 'images/pixel.jpg';
$im = imagecreatefromjpeg($imageFile);
header('Content-type: image/jpeg');
imagejpeg($im);


?>

Uma espécie de resposta tangencial, mas muito tempo para um comentário:

Você não precisa necessariamente incremento de qualquer coisa, dependendo de como implementá-lo. Se você está apontando para torná-lo super-rápido, apenas contando com o servidor pedido registros deve ser suficiente. Cada pedido de "getImage.php? Q = 5123" já estará lá, você só precisa arrancar a informação relevante a partir da querystring.

Você pode analisar os logs em um agradável, banco de dados de consulta de poder mais tarde (via cron et al), fora da banda, onde ele não afetará servindo-se os erros de rastreamento. Fazer tudo de uma só vez é um pouco mais elegante, mas se você está lidando com um monte de pedidos, os logs já estão lá de qualquer maneira.

Bonus:. Logs do servidor também têm referências e marcas de tempo, para que possa ver mais facilmente se alguém está martelando diretamente getImage.php ou ligando para ela de outro lugar para jogo de números, devem esses números valer alguma coisa

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top