Хубава Банер Система

vik96

Registered
Здравейте. Наскоро ми трябваше добра банер система за моя сайт... Търсих и не намерих подходяща и реших сам да си я направа. Някой хора ми писаха по скайп ,че и на тях им трябва такава и аз реших да я споделя с вас.
Системата съдържа 4 файла + 1 таблица в база данни:
Config.php
Out.php
Add.php
Index.php


SQL код:
Код:
 CREATE TABLE `banners` (  
  `id` int(11) NOT NULL auto_increment,  
  `click` text,  
  `pokazvaniq` text,  
  `kartinka` text,  
  `link` text,  
  `rez` text,  
  PRIMARY KEY  (`id`)  
);

Config.php :

Код:
  <?  
mysql_connect("localhost","user","pass") or die("Ъъъъъъ. Грешни данни за връзка");  
mysql_select_db("banner") or die("ъъъъъ. Къде ми е базата данни");  
  
function show_banner($razmeri)  
{  
$select = mysql_query("SELECT * FROM banners WHERE rez='$razmeri' AND pokazvaniq > '0' ORDER   
  
by RAND() LIMIT 1");  
$rezz = explode("x",$razmeri);  
  
while( $row = mysql_fetch_array($select) )  
{  
echo '<a href=out.php?id='.$row[id].'><img width="'.$rezz[0].'" height="'.$rezz[1].'"   
  
src='.$row[kartinka].'></a>';  
mysql_query("UPDATE banners SET pokazvaniq=pokazvaniq-1 WHERE id='$row[id]'");  
}  
}  
?>

add.php

Код:
  <?  
include("config.php");  
function sec($prom)  
{  
return htmlspecialchars(addslashes($prom));  
}  
if ( isset($_POST[button]))  
{  
  
$rez = sec($_POST[rez]);  
$snimka = sec($_POST[snimka]);  
$link = sec($_POST[link]);  
$pokazvaniq = sec($_POST[pokazvaniq]);  
  
if ( empty($rez) || empty($snimka) || empty($link) || empty($pokazvaniq))  
{  
echo 'popylni vsi4ki poleta ...';  
}  
else  
{  
mysql_query("INSERT INTO banners (id,click,pokazvaniq,kartinka,link,rez) VALUES('','0','$pokazvaniq','$snimka','$link','$rez')");  
echo "Банера е добавен успешно :)";  
}  
}  
else  
{  
echo '<form action="" method=post> Линк до снимка : <BR> <input type=text name=snimka><BR>Линк до сайта : <BR> <input type=text name=link><BR>показвания : <BR> <input type=text name=pokazvaniq><BR> Резолюция:<select name=rez> <option value="468x60"> 468x60</option><option value="88x31"> 88x31</option><option value="120x240"> 120x240</option></select> <BR> <input type=submit name=button></form>';  
}  
?>

Out.php
Код:
  <?   
include("config.php");  
$id = trim($_GET[id]);  
$query = mysql_query("SELECT * FROM banners WHERE id='$id'");  
while ( $row = mysql_fetch_array($query) )  
{  
mysql_query("UPDATE banners SET click=click+1 WHERE id='$id'");  
echo '<meta http-equiv="Refresh" content="1; URL='.$row[link].'">';  
}  
?>


И сега последно Index.php

Код:
  <? include("config.php");  
show_banner('468x60'); ?>

Задължително във всяка ваша страница инклудвайте CONFIG.PHP .. Където искате да се покаже банера използвайте
Код:
 show_banner('468x60'); // na mqstoto na 468x60 moje da slojite va6a rezulutiq , s koqto ste adnali nqkoi baner...



Файлове: Свали

Ако имате въпроси питайте. Кода е тестван и работи безпроблемно.
 
Системата е много добра, но как може да се направи сайта да се отваря в нов прозорец
 
В config правиш така
Код:
<? 
mysql_connect("localhost","user","pass") or die("Ъъъъъъ. Грешни данни за връзка"); 
mysql_select_db("banner") or die("ъъъъъ. Къде ми е базата данни"); 
 
function show_banner($razmeri) 
{ 
$select = mysql_query("SELECT * FROM banners WHERE rez='$razmeri' AND pokazvaniq > '0' ORDER   
 
by RAND() LIMIT 1"); 
$rezz = explode("x",$razmeri); 
 
while( $row = mysql_fetch_array($select) ) 
{ 
echo '<a href=out.php?id='.$row[id].' target="_blank"><img width="'.$rezz[0].'" height="'.$rezz[1].'"   
 
src='.$row[kartinka].'></a>'; 
mysql_query("UPDATE banners SET pokazvaniq=pokazvaniq-1 WHERE id='$row[id]'"); 
} 
} 
?>
 
Как може да се направи да може да се добавят и банери без ограничение на импресиите?
 
Ако си с годзила: десен бутон > save link as > и си го сваляш като RAR архив. Ако си на Internet Explorer трябва да почне автоматично да се сваля :wink:
 
много хубава система , ама не мислиш ли , че трябва да направиш парола за да можеш да добавяш банери ? ;]
 
Моя съвет е да оправиш БД-то.
Защо всички полета са ти text? Ако станат много записи ще започне да лагва :wink:
 

Back
Горе