Feed -

Banner rotativo em PHP/MySQL

Data: 10/05/2009
Categoria: Tutoriais PHP
Visualizações: 511
Comentários: 2 Comentários
VN:F [1.8.8_1072]
Dê a sua nota:
Nota: 10.0 de 10 (1 Voto)
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:

<?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:

<?php

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:

<?php

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!

Banner rotativo em PHP/MySQL10.0101

Inscreva-se e receba novidades no seu Email:

2 Comentários em: “Banner rotativo em PHP/MySQL”

  1. israelgarciaInternet Explorer 8.0;Windows XP

    Olá amigos, já tenho o instalado banners e minha loja virtual em PHP, gostaria da saber apenas devo instalar o Banner rotativo no lugar dos estáticos já instalados ?? Grato e desculpe mas não sou um expert…no aguardo

  2. PontuakiFirefox 3.6.3Windows 7

    Olá israel! Se você optar por retirar o banner estático, basta substituir pelo rotativo. Se não, basta você usar os dois modelos em conjunto.

Faça um comentário




Usuários do Twitter: Entre com sua conta do Twitter clicando no botão abaixo.

Importante: Todo e qualquer texto publicado na internet através deste sistema não reflete, necessariamente, a opinião deste blog ou de seus autores. Os comentários publicados através deste sistema são de exclusiva e integral responsabilidade e autoria dos leitores que dele fizerem uso. Os autores deste blog reserva-se, desde já, o direito de excluir comentários e textos que julgar ofensivos, difamatórios, caluniosos, preconceituosos ou de alguma forma prejudiciais a terceiros. Textos de caráter promocional ou inseridos no sistema sem a devida identificação de seu autor (sem nome completo e endereço válido de email) também poderão ser excluídos.
Melhores ofertas

© Copyright 2009 - 2010 Pontuaki - Downloads - Todos os direitos reservados - Política de privacidade

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