|
| Ротатор на банери с екстри |
|
|
| Автор |
mlg (08.04.2008 17:40) |
 |
съобщение до автора |
|
| Погледнат |
1870 пъти |
 |
добави към любими |
|
| Оценка |
 |
 |
добави коментар |
|
| Гласове |
2 |
 |
изпрати на приятел |
|
| Коментари |
(4) |
 |
абонирай се за PHP |
|
|
|
|
Страница 1 / 1 |
|
|
|
Това е ротатор на банери с възможност за добавяне, изтриване и поправяне на банери и въвеждане на максимален брой импресии. При достигане на максималният брой импресии на даден банер тои се деактивира и вече не се появява. След това дадения банер отново може да се активира с нов брой максимални импресии.
Най-напред трябва да създадете нова таблица в MySQL с име banners.
CODE1
2
3
4
5
6
7
8
9
10
| CREATE TABLE `banners` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` text NOT NULL,
`file` text NOT NULL,
`url` text NOT NULL,
`imp` int(11) NOT NULL,
`max_imp` int(11) NOT NULL,
`activ` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8_bin AUTO_INCREMENT=10 ; |
След като вече сте създали таблицата в MySQL, трябва да създадете конфигурационен файл с име config.php
CODE1
2
3
4
5
6
| <?
$db_host = "localhost"; $db_user = "user"; $db_pass = "pass"; $db = "banners"; ?> |
След това вече можете да преминете към създаването на banners.php в който ще се помести скрипта за изкарването на банерите.
CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
| <?
include('config.php');
$connect = mysql_pconnect("$db_host","$db_user","$db_pass") or die ( 'Грешка при връзката с MySQL!' );
mysql_select_db("$db") or die ( 'Грешка!' );
$query_number = "select * from banners where activ = 'yes'";
$result_number = mysql_query($query_number);
$number_of_banners = mysql_num_rows($result_number);
$rand = rand(1, $number_of_banners);
$rand_banner = $rand - 1;
$query_print = "select * from banners where activ = 'yes' limit ".$rand_banner.", 1";
$result_print = mysql_query($query_print);
$banner_print = mysql_fetch_array($result_print);
if($banner_print[imp] <= $banner_print[max_imp]){
$add_imp = $banner_print[imp] + 1;
$query_add_imp = "UPDATE banners SET imp = ".$add_imp." WHERE id = ".$banner_print[id]." LIMIT 1 ;";
$result_add_imp = mysql_query($query_add_imp);
if($banner_print[id] != NULL){
echo "<a href='".$banner_print[url]."'><img src='".$banner_print[file]."' border='0' /></a>";};
};
if($banner_print[imp] > $banner_print[max_imp]){
$query_add_imp = "UPDATE banners SET activ = 'no' WHERE id = ".$banner_print[id]." LIMIT 1 ;";
$result_add_imp = mysql_query($query_add_imp);
};
?> |
И най-накрая но не и на последно място по-значение е скрипта за контрол на ротатора, в който ще можете да добавяте, триете или променяте банерите. Направете още един файл с име configbanners.php и в него сложете следното:
CODE1
2
3
4
5
6
| <html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Конфигурация на банерите</title>
</head>
<body> |
CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
| <?
include('config.php');
$connect = mysql_pconnect("$db_host","$db_user","$db_pass") or die ( 'Грешка при връзката с MySQL!' );
mysql_select_db("$db") or die ( 'Грешка!' );
?>
<table border="0" width="980" cellspacing="0" cellpadding="0">
<tr>
<td width="980" height="60">
<?
if($_GET['add'] == banner) {
if($_POST['name'] == NULL or $_POST['file'] == NULL or $_POST['url'] == NULL or $_POST['max_imp'] == NULL) {
echo "Попълнете всички полета.";
} else {
$query_add = "INSERT INTO banners (id ,name ,file ,url ,imp ,max_imp ,activ )
VALUES (NULL , '".$_POST['name']."', '".$_POST['file']."', '".$_POST['url']."', '', '".$_POST['max_imp']."', 'yes');";
$result_add = mysql_query($query_add);
echo "Банерът е добавен.";
};
};
if($_GET['del'] != 0) {
$query_del = "DELETE FROM banners WHERE id = ".$_GET['del']." LIMIT 1";
$result_del = mysql_query($query_del);
echo "Банерът е изтрит.";
};
if($_GET['activate'] != 0) {
$query_activate = "UPDATE banners SET imp = '0',max_imp = '".$_POST['new_max_imp']."',activ = 'yes' WHERE id = ".$_GET['activate']." LIMIT 1 ;";
$result_activate = mysql_query($query_activate);
echo "Банерът е активиран отново с <b>".$_POST['new_max_imp']."</b> импресии.";
};
?> | CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
| </td>
</tr>
<tr>
<td width="980" height="32">
<table border="0" width="980" cellspacing="0" cellpadding="0">
<tr>
<td width="30" height="50">ID
</td>
<td width="150" height="50">Име на банера<br>пр: banner 1
</td>
<td width="200" height="50">Линк до файла<br>пр: banner1.png
</td>
<td width="200" height="50">Линк до банера<br>пр: http://it-place.net
</td>
<td width="100" height="50" align="center">Брой<br>импресии
</td>
<td width="100" height="50" align="center">Макс. брой<br>импресии
</td>
<td width="100" height="50" align="center">Активен/<br>Неактивен
</td>
<td width="100" height="50" align="center">
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td width="980" height="1" bgcolor="black">
</td>
</tr> |
CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
| <?
$query_list = "select * from banners";
$result_list = mysql_query($query_list);
while ($banner_list = mysql_fetch_array($result_list)) {
?>
<tr>
<td width="980" height="32">
<form method="POST" action="configbanners.php?activate=<? echo $banner_list[id]; ?>" style="margin-top: 0; margin-bottom: 0">
<table border="0" width="980" cellspacing="0" cellpadding="0">
<tr>
<td width="30" height="32"><? echo $banner_list[id]; ?>
</td>
<td width="150" height="32"><? echo $banner_list[name]; ?>
</td>
<td width="200" height="32"><? echo $banner_list[file]; ?>
</td>
<td width="200" height="32"><? echo $banner_list[url]; ?>
</td>
<td width="100" height="32" align="center"><? echo $banner_list[imp]; ?>
</td>
<td width="100" height="32" align="center"><input type="text" name="new_max_imp" style="width: 60px;" value="<? echo $banner_list[max_imp]; ?>" >
</td>
<td width="100" height="32" align="center">
<?
if($banner_list[activ] == 'yes') echo "Активен";
if($banner_list[activ] == 'no') echo "<input type='submit' name='activate' value='Неактивен' style='width: 98px;'>";
?>
</td>
<td width="100" height="32" align="center">
<a href="configbanners.php?del=<? echo $banner_list[id]; ?>">
<input type="button" name="del" value="Изтрии" style="width: 98px;"></a>
</td>
</tr>
</table>
</form>
</td>
</tr>
<tr>
<td width="980" height="1" bgcolor="black">
</td>
</tr>
<?
};
?> |
CODE1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| <tr>
<td width="980" height="32">
<form method="POST" action="configbanners.php?add=banner" style="margin-top: 0; margin-bottom: 0">
<table border="0" width="980" cellspacing="0" cellpadding="0">
<tr>
<td width="30" height="32">Нов:
</td>
<td width="150" height="32"><input type="text" name="name" style="width: 145px;">
</td>
<td width="200" height="32"><input type="text" name="file" style="width: 195px;">
</td>
<td width="200" height="32"><input type="text" name="url" style="width: 195px;">
</td>
<td width="100" height="32" align="center">
</td>
<td width="100" height="32" align="center"><input type="text" name="max_imp" style="width: 60px;">
</td>
<td width="100" height="32" align="center"><input type="submit" name="add" value="Добави" style="width: 98px;">
</td>
<td width="100" height="32" align="center">
</td>
</tr>
</table>
</form>
</td>
</tr>
<tr>
<td width="980" height="1" bgcolor="black">
</td>
</tr>
</table>
</body>
</html> |
Товя е всичко от този урок, надявам се да ви помогне.
Още уроци от тази рубрика
|
|
| 1 посетител чете този урок (0 потребители и 1 гост) |
|
|
Активни потребители:
---
|
| |
|
|