Colocar Resposta 
 
Avaliação do Tópico:
  • 0 votos - 0 Média
  • 1
  • 2
  • 3
  • 4
  • 5
[tutorial] Imagens aleatórias com base de dados para estatisticas
08-10-2008, 18:15
Mensagem: #1
[tutorial] Imagens aleatórias com base de dados para estatisticas
Bem, a base de dados apenas serve para estatísticas, mas podem criar uma para as imagens ao invés de as terem apenas no php. Eu vou dar o exemplo com 2 imagens.

Criação da tabela:
Código:
CREATE TABLE IF NOT EXISTS `nome_da_tabela` (
  `ip` varchar(50) collate latin1_general_ci NOT NULL,
  `views` int(11) NOT NULL,
  `clicks` int(11) NOT NULL,
  `cc` varchar(50) collate latin1_general_ci NOT NULL,
  `country` varchar(50) collate latin1_general_ci NOT NULL,
  PRIMARY KEY  (`ip`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

Ficheiro includes/db.inc.php
Código PHP:
<?php
        
/*  Database Information - Required!!  */
        /* -- Configure the Variables Below --*/
        
$dbhost 'localhost';
        
$dbusername '';
        
$dbpasswd '';
        
$database_name '';
        
/* Database Stuff, do not modify below this line */
        
$connection mysql_connect("$dbhost","$dbusername","$dbpasswd")
                or die (
"Couldn't connect to server.");
        
$db mysql_select_db("$database_name"$connection)
                or die(
$database_name - Couldn't select database.");
?>

Ficheiro imagem.php
Código PHP:
<?php
        ini_set
('display_errors''0');
        
error_reporting (E_ALL); // Report everything
        
include("includes/db.inc.php");
        
session_start();
        
// Add a view
        
$ip $_SERVER['REMOTE_ADDR'];
        
$handle fopen("http://www.ipdomain.info/cc[".$ip."]""r");
        
$cc stream_get_contents($handle);
        
fclose($handle);
        
$handle fopen("http://www.ipdomain.info/country[".$ip."]""r");
        
$country stream_get_contents($handle);
        
fclose($handle);
        if(!
mysql_num_rows(mysql_query("SELECT `ip` FROM `nome_da_tabela` WHERE `ip`='$ip'"))) {
                
mysql_query("INSERT INTO `nome_da_tabela` values('$ip', 1, 0, '$cc', '$country')");
        }
        else {
                
mysql_query("UPDATE `nome_da_tabela` SET `views` = `views` + 1 WHERE `ip`='$ip'");
        }

        
header('Content-type: image/gif');
        if(
rand(1,2) == 1) {
                
$stream fopen('images/pub1.gif''r');
                
$_SESSION['image'] = 1;
        }
        else {
                
$stream fopen('images/pub2.gif''r');
                
$_SESSION['image'] = 2;
        }
        echo 
stream_get_contents($stream);
        
fclose($stream);

?>

Ficheiro visit.php
Código PHP:
<?php

        ini_set
('display_errors''0');
        
error_reporting (E_ALL); // Report everything
        
include("includes/db.inc.php");
        
session_start();
        
// Add a view
        
$ip $_SERVER['REMOTE_ADDR'];
        
$handle fopen("http://www.ipdomain.info/cc[".$ip."]""r");
        
$cc stream_get_contents($handle);
        
fclose($handle);
        
$handle fopen("http://www.ipdomain.info/country[".$ip."]""r");
        
$country stream_get_contents($handle);
        
fclose($handle);
        if(!
mysql_num_rows(mysql_query("SELECT `ip` FROM `nome_da_tabela` WHERE `ip`='$ip'"))) {
                
mysql_query("INSERT INTO `nome_da_tabela` values('$ip', 1, 1, '$cc', '$country')");
        }
        else {
                
mysql_query("UPDATE `nome_da_tabela` SET `clicks` = `clicks` + 1 WHERE `ip`='$ip'");
        }
        if(!isset(
$_SESSION['image'])) $link "http://www.oteusite.com"// Se não estiver definido
        
if($_SESSION['image'] == 1$link "http://www.outrosite.com";
        if(
$_SESSION['image'] == 2$link "http://www.outrosite2.com";
        
header("Location: $link");

?>

Ficheiro .htaccess
Código:
RewriteEngine on
RewriteRule ^pub.gif$ imagem.php [L]
RewriteRule ^page$ visit.php [L]

Agora é só darem o link de http://www.aminhapagina.com/publicidade/pub.gif e que seja redireccionado para http://www.aminhapagina.com/page

PS.: Apesar do código não estar documentado, é fácil fazer alterações ao mesmo para ficar ao vosso gosto
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
08-10-2008, 18:52
Mensagem: #2
RE: [tutorial] Imagens aleatórias com base de dados para estatisticas
interessante.
Mas

404 NOT FOUND.. é o que dá

[Imagem: pplware_addict.png]
[Imagem: anicopchase.gif]
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
08-10-2008, 19:31
Mensagem: #3
RE: [tutorial] Imagens aleatórias com base de dados para estatisticas
Aquilo foram exemplos, querem ver a funcionar? Não sei se posso por aqui publicidade
Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
24-03-2009, 23:07 (Esta mensagem foi modificada pela última vez a: 24-03-2009 23:07 por Bruno Bernardino.)
Mensagem: #4
RE: [tutorial] Imagens aleatórias com base de dados para estatisticas
@anjo2

Podes sim Smile

EDIT: Reparei agora como este tópico é antigo... de qualquer das maneiras, fica a intenção...

BrunoBernardino.com
Visitar Website de este utilizador Procurar todas as mensagens deste utilizador
Citar esta mensagem numa resposta
Colocar Resposta 


Saltar Fórum:


Utilizadores a ver este tópico: 3 Visitante(s)