Banner rotativo em PHP/MySQL

Data: 10/05/2009
Categoria: Tutoriais PHP
Visualizações: 141
Comentários: Nenhum comentário
VN:F [1.7.8_1020]
Dê a sua nota:
Nota: 0.0/10 (0 Votos)
Banner rotativo em PHP/MySQL

Aprenda a rotacionar seu banner, usando JavaScript, PHP e MySQL. Esse é o ponto de partida para um sistema de banner rotativo nas dimensões 468×60 (no formato GIF ou PNG).

Ultimamente muitas pessoas perguntam, como sistemas de banner rotativo.

Essa dica disponibiliza o código de um simples sistema de banner rotativo em MySQL. Ele é pequeno e fácil de entender.

Para começar crie uma tabela no MySQL com a seguinte estrutura :

CREATE TABLE banner (
codigo int(11) NOT NULL auto_increment,
url char(255),
grafico char(255),
exibicoes int(11),
clicks int(11),
maxexib int(11),
data datetime,
PRIMARY KEY (codigo)
);

Depois crie um arquivo com as suas configurações no MySQl , chamado config.php :

$host = “localhost”; // host do MySQL
$user = “root”; // id do usuario do MySQL
$pass = “”; // senha do usuario no MySQL
$database = “banner”; // database do usuario no MySQl
?>

Para inserir seus banner (a url da página alvo, a url da figura e o numero máximo de exibições), crie um arquivo insere.php com o seguinte conteúdo:

include(”config.php”);

if (isset($submit)) {
$data = date(”y:m:d h:i:s”);
$conn = mysql_connect($host, $user, $pass);
mysql_select_db($database);
$insere = “INSERT INTO banner (url, grafico, exibicoes, clicks, maxexib, data)
VALUES (’$link’, ‘$imagem’, 0, 0, ‘$max’, ‘$data’)”;
mysql_query($insere, $conn);
mysql_close($conn);
?>

<input onclick=”javascript: self.close();” name=”submit” type=”submit” value=”Fechar” />
} else {

<form action=”insere.php” method=”post”>
<table border=”1″ cellspacing=”0″ cellpadding=”0″ align=”center” bordercolor=”#000000″>
<tbody>
<tr>
<td>
<table border=”0″>
<tbody>
<tr>
<td colspan=”2″ bgcolor=”#219cde”>
<p align=”center”>Adicionar novo banner</p>
</td>
</tr>
<tr>
<td>Link(Url):</td>
<td width=”50%”><input name=”link” size=”40″ type=”text” /></td>
</tr>
<tr>
<td>Imagem(Url):</td>
<td width=”50%”><input name=”imagem” size=”40″ type=”text” /></td>
</tr>
<tr>
<td>Número de exibições:</td>
<td width=”50%”><input name=”max” size=”40″ type=”text” /></td>
</tr>
<tr>
<td colspan=”2″>
<p align=”center”><input type=”submit” />
value=”Enviar” name=”submit”&gt;</td>
</tr>
</tbody></table>
</td>
</tr>
</tbody></table>
</form>}
?>

Para exibir os seus banners, você primeiro deve criar um arquivo chamado exibe.php com o seguinte conteúdo:

<?php
include("config.php");

$conn = mysql_connect($host, $user, $pass);
mysql_select_db($database);

// a clasula ORDER by RAND() é responsável pela rotação do banner.
// note que maxexib é igual a zero, ele não é exibido
$query = “SELECT * FROM banner WHERE maxexib > 0 ORDER by RAND() LIMIT 1″;
$consulta = mysql_query($query, $conn);
$linha = mysql_fetch_row($consulta);

$linha[5] -= 1;
$linha[3] += 1;

// subtrai menos 1 ao campo maxexib
$update = “UPDATE banner SET maxexib=$linha[5] WHERE codigo=’$linha[0]‘”;
mysql_query($update, $conn);

// adiciona mais 1 ao campo exibicoes
$update2 = “UPDATE banner SET exibicoes=$linha[3] WHERE codigo=’$linha[0]‘”;
mysql_query($update2, $conn);

mysql_close($conn);

// imprime o banner ,que vai ser usado no javascript
echo “document.write(”<a href=/banner/conta_click.php?id=$linha[0] target=_blank><img border=0 src=$linha[2] width=468 height=60></a>  ”);”;
?>

Após ter criado o arquivo exibe.php , crie uma javascript na página onde seus banners vão ser exibidos ,com a seguinte estrutura:

<SCRIPT LANGUAGE="JavaScript" SRC="http://www.suapagina.com/exibe.php"></SCRIPT>

Um pequeno exemplo: Vamos dizer que o exibe.php tem esse caminho em sua página, www.pontuaki.com.br/exibe.php (infelizmente, não existe essa página). Para inserir o javascript no html é só fazer isso:

<html>
<head>
<title>Teste do banner</title>
</head>
<body>
<p>Esse é seu banner </p>
<SCRIPT LANGUAGE="JavaScript" SRC="http://www.pontuaki.com.br/exibe.php"></SCRIPT>
</body>
</html>

Para registrar os clicks em seus banners e redirecionar para a página alvo, crie um arquivo chamado conta_click.php com seguinte conteúdo:

include(”config.php”);

$conn = mysql_connect($host, $user, $pass);
mysql_select_db($database);

$query = “SELECT * FROM banner WHERE codigo=$id LIMIT 1″;
$consulta = mysql_query($query, $conn);
$linha = mysql_fetch_row($consulta);

$linha[4] += 1;

// adiciona mais 1 ao campo clicks
$update = “UPDATE banner SET clicks=$linha[4] WHERE codigo=’$linha[0]‘”;
mysql_query($update, $conn);

mysql_close($conn);

// redireciona para página alvo do banner
header(”Location: $linha[1]“);
?>

Para encerrar vamos criar um script para administrar seus banners com nome de admin.php. Lá você obterá as seguintes informações: Código do banner, estatísticas de exibições, se o banner está ativo (maxexib maior que 0), data de criação e a opção de remover(ou criar) banners. O código do admin.php é o seguinte:

<input type="submit" value="Inserir novo Banner" name="submit" onClick='javascript: window.open("insere.php","","width=450,heigth=100,toolbar=no");'>
<?php
include("config.php");

$conn = mysql_connect($host, $user, $pass);
mysql_select_db($database);

if (isset($submit)) {
$delete = “DELETE FROM banner WHERE codigo = $id”;
mysql_query($delete, $conn);
}

$query = “SELECT * FROM banner ORDER by codigo ASC”;
$consulta = mysql_query($query, $conn);

while ($linha = mysql_fetch_row($consulta)) {
?>
<p> </p>
<table border=”1″ bordercolor=”#000000″ cellspacing=”0″ cellpadding=”0″>
<tr>
<td width=”100%”>
<p align=”left”>Código : <?php echo $linha[0]; ?>
<p>Link : <a href=”<?php echo $linha[1]; ?>”><?php echo $linha[1]; ?> </a></p>
<p>Imagem :<img border=”0″ src=”<?php echo $linha[2]; ?>” width=”468″ height=”60″></p>
<p>Exibições :<?php echo $linha[3]; ?></p>
<p>Clicks :<?php echo $linha[4]; ?> </p>
<p>Porcentagem(Clicks por exibições) :
<?php echo round(($linha[4]/$linha[3])*100,2); ?>%</p>
Data  de criação :<?php echo $linha[6]; ?>
<p>Status :<?php if ($linha[5] != 0) { ?>Ativo<?php } else { ?>Inativo<?php } ?></p>
<form method=”POST” action=”admin.php?id=<?php echo $linha[0]; ?>”>
<center>
<input type=”submit” value=”Remover” name=”submit”>
</center>
</form>
</td>
</tr>
</table>
<?php
}
mysql_close($conn);
?>

Esperamos que tenham entendido pessoal, qualquer dúvida deixe um comentário.

Até a próxima!

Compartilhe:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Blogplay
  • blogmarks
  • Diigo
  • DZone
  • Gwar
  • LinkArena
  • LinkedIn
  • Linkter
  • MSN Reporter
  • Netvouz
  • PDF
  • RSS
  • Socialogs
  • Technorati
  • Twitter
  • Webnews.de
  • Yahoo! Bookmarks
  • Yahoo! Buzz
  • Yigg

Deixe um comentário

Top Acessos
Nero 9 9.4.26.0
15.588 Visualizações
Atualizar servidores Emule
8.823 Visualizações
Avast! Home Edition 4.8.1368
7.541 Visualizações
Guitar Rage 2.4.3
5.516 Visualizações
Broken Aero Vista Black
5.242 Visualizações
Cartão de visitas (CorelDraw)
4.806 Visualizações
NOD32 4.0.474
4.391 Visualizações
Cross Fire 1041
4.130 Visualizações
Ofertas imbatíveis!

© 2008 - 2010 Pontuaki - Downloads | Todos os direitos reservados | Política de privacidade

Proibida a reprodução total ou parcial sem prévia autorização.