• Welcome to Forum graficzne Burning-Brushes.pl. Please log in or sign up.
 

Skrypt rotatora bannerów

Zaczęty przez Kaczy, Styczeń 29, 2011, 15:06:57

Poprzedni wątek - Następny wątek
Oto 2 metody stworzenia rotatora bannerów ;)

I. Za pomocą mysql i php:
1. Tworzymy bazę, do niej dodajemy:
CREATE TABLE `rotator` (
`adres` VARCHAR( 255 ) CHARACTER SET latin2 COLLATE latin2_general_ci NOT NULL ,
`baner` VARCHAR( 255 ) CHARACTER SET latin2 COLLATE latin2_general_ci NOT NULL ,
`wys` VARCHAR( 100 ) DEFAULT '60' NOT NULL ,
`szer` VARCHAR( 100 ) DEFAULT '468' NOT NULL
);


2. Tworzymy plik config.php (jeśli takiego nie mamy) i za pomocą niego łączymy się z bazą:
Kod:


$mysql_host 
'host do bazy';
$mysql_login 'user bazy';
$mysql_pass 'haslo bazy';
$mysql_db_name 'nazwa bazy';

if (!
mysql_connect($mysql_host$mysql_login$mysql_pass) || !mysql_select_db($mysql_db_name) || !mysql_query("SET CHARSET Latin2"))

{

echo 
'Problem z połÂączeniem z bazÂą danych. Spróbuj ponownie lub skontaktuj się z administratorem.';

exit;

}


3. Tworzymy plik dodaj.php i wpisujemy w niego:

<?php
require 'config.php';
$error=array();
if (
$_post['adres'] || $_post['baner'] || $_post['wys'] || $_post['szer'])
{
if (
strlen($_post['adres']) < || strlen($_post['adres']) > 255 || eregi('^[><]{1,255}$'$_post['adres']))
{
$error['adres'] = 'adres może mieć max 255 znaków i nie może zawierać < oraz >!';
}
$nazwa_pliku $_post['baner'];

$roz strtolower(substr($nazwa_pliku,strrpos($nazwa_pliku,".")+1));
if (
strlen($_post['baner']) < || strlen($_post['baner']) > 255 || $roz!='jpg' || $roz!='gif' || $roz!='jpeg' || $roz!='png'))
{
$error['baner'] = 'baner może mieć max 255 znaków i musi mieć rozszerzenie jpg, jpeg, gif lub png!';
}
if (!
$error)
{
if (!
mysql_query("insert into `rotator` (`adres`, `baner`, `wys`, `szer`) values ('".$_POST['adres']."', '".$_POST['baner']."', '".$_POST['wys']."', '".$_POST['szer']."')"))
{
echo 
'nie udasię dodać danych do bazy!';
} else echo 
'dane zostadodane do bazy!';
}
} else {
echo 
'<form action="'.$PHP_SELF.'" method=post><input type=text name=adres /><br /><input type=text name=baner /><br /><input type=text name=szer value=468 /><br /><input type=text name=wys value=60 /><br />
<input type=sybmit value="Dodaj banner" /></form>'
;
}
?>


4. Teraz możemy dodać skrypt, który będzie losował bannery ;) :

<?php
$sql
=mysql_query('select * from rotator order by rand()');
$row=mysql_fetch_assoc($sql);
echo 
'<a href="'.$row['adres'].'"><img src="'.$row['baner'].'" width='.$row['szer'].' height='.$row['wys'].' /></a>';
?>

I to by było na tyle ;) Treaz 2 sposób, z wykorzystaniem biblioteki gd (jeśli takowa na serwerze jest):

1. Tworzymy bazę, do niej dodajemy:

CREATE TABLE `rotator` (
`adres` VARCHAR( 255 ) CHARACTER SET latin2 COLLATE latin2_general_ci NOT NULL ,
`baner` VARCHAR( 255 ) CHARACTER SET latin2 COLLATE latin2_general_ci NOT NULL ,
`wys` VARCHAR( 100 ) DEFAULT '60' NOT NULL ,
`szer` VARCHAR( 100 ) DEFAULT '468' NOT NULL
);


2. Tworzymy plik config.php (jeśli takiego nie mamy) i za pomocą niego łączymy się z bazą:


$mysql_host 
'host do bazy';
$mysql_login 'user bazy';
$mysql_pass 'haslo bazy';
$mysql_db_name 'nazwa bazy';

if (!
mysql_connect($mysql_host$mysql_login$mysql_pass) || !mysql_select_db($mysql_db_name) || !mysql_query("SET CHARSET Latin2"))

{

echo 
'Problem z połÂączeniem z bazÂą danych. Spróbuj ponownie lub skontaktuj się z administratorem.';

exit;

}

3. Tworzymy plik dodaj.php i wpisujemy w niego:
Kod:


<?
php
require 'config.php';
$error=array();
if (
$_post['adres'] || $_post['baner'] || $_post['wys'] || $_post['szer'])
{
if (
strlen($_post['adres']) < || strlen($_post['adres']) > 255 || eregi('^[><]{1,255}$'$_post['adres']))
{
$error['adres'] = 'adres może mieć max 255 znaków i nie może zawierać < oraz >!';
}
$nazwa_pliku $_post['baner'];

$roz strtolower(substr($nazwa_pliku,strrpos($nazwa_pliku,".")+1));
if (
strlen($_post['baner']) < || strlen($_post['baner']) > 255 || $roz!='jpg' || $roz!='gif'|| $roz!='jpeg' || $roz!='png'))
{
$error['baner'] = 'baner może mieć max 255 znaków i musi mieć rozszerzenie jpg, jpeg, gif lub png!';
}

$rozmiary=getimagesize($nazwa_pliku);
if (!
$error)
{
if (!
mysql_query("insert into `rotator` (`adres`, `baner`, `wys`, `szer`) values ('".$_POST['adres']."', '".$_POST['baner']."', '".$rozmiary[1]."', '".$rozmiary[0]."')"))
{
echo 
'nie udasię dodać danych do bazy!';
} else echo 
'dane zostadodane do bazy!';
}
} else {
echo 
'<form action="'.$PHP_SELF.'" method=post><input type=text name=adres /><br /><input type=text name=baner /><br /><input type=sybmit value="Dodaj banner" /></form>';
}
?>


4. Teraz możemy dodać skrypt, który będzie losował bannery ;) :
Kod:


<?php
$sql
=mysql_query('select * from rotator order by rand()');
$row=mysql_fetch_assoc($sql);
echo 
'<a href="'.$row['adres'].'"><img src="'.$row['baner'].'" width='.$row['szer'].' height='.$row['wys'].' /></a>';
?>


Jak widać wiele się nie zmieniło, jedynie wysokość i szerokość obrazka, są ustawiane automatycznie