За последние 24 часа нас посетили 123798 программистов и 2451 робот. Сейчас ищут 1417 программистов ...

Баннерная система...

Тема в разделе "PHP для новичков", создана пользователем EvelRus, 16 авг 2008.

  1. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    Пытаюсь прикрутить к сайту сабж, отсюда вопросы:
    Как заставить скрипт брать рандомом файлы из папки, но... не тупо include 'banners.php'; а что бы через тег <img src="banners.php"> и появлялась картинка
    При этом скрипт должен считать кол-во просмотров этого баннера и возможное щелчки по ним... данные в БД

    Заранее спасибо!
     
  2. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    В шаблон вставляй адрес баннера и все. А в движке считай показы и произвольно выбирай имена баннеров из базы.
     
  3. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    а клики? :(
     
  4. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    А что клики?
    <a href="banner.php?id=12313"><img...></a>
     
  5. Andrey5555

    Andrey5555 Активный пользователь

    С нами с:
    29 ноя 2007
    Сообщения:
    486
    Симпатии:
    0
    Адрес:
    Киев
    Как считать клики по банеру?
     
  6. Vitas

    Vitas Активный пользователь

    С нами с:
    7 фев 2006
    Сообщения:
    595
    Симпатии:
    0
    Адрес:
    Новосибирск, Академгородок
    По-моему, многоуважаемый Kreker уже на всё ответил.
     
  7. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    PHP:
    1. <?php
    2. /**************************************
    3. *            banner.php
    4. *   -----------------------------
    5. *            17/08/2008
    6. **************************************/
    7.  
    8. $id = intval($_GET['id']);
    9.  
    10. // Извлечение случайного баннера из БД
    11. $sql = ('SELECT * FROM `site_banners` ORDER BY RAND() LIMIT 1;');
    12. $sql = mysql_query($sql) or die ('Не могу выбрать баннер');
    13. if ($id == null)
    14. {
    15. while($nextrow = mysql_fetch_array($sql))
    16. {
    17.  //Вывод баннера
    18. // Увеличение счетчиков
    19.  $see = $nextrow['banner_see'] + 1;
    20.  $sql1 = ('UPDATE `site_banners` SET `banner_see` = \''.$see.'\' WHERE `banner_id` ='.$nextrow['banner_id'].' LIMIT 1 ;');
    21.  $sql1 = mysql_query($sql1) or die ('не могу обновить показы');
    22.  $banner = '<a href="banner.php?id='.$nextrow['banner_id'].'" target="_blank"><img src="'.$nextrow['banner_name'].'"></a>';
    23.  echo $banner;
    24. }
    25.  
    26. }
    27. else
    28. {
    29.  while($nextrow = mysql_fetch_array($sql))
    30. {
    31. // Увеличение счетчиков
    32.  $click = $nextrow['banner_klick'] + 1;
    33.  $sql2 = ('UPDATE `site_banners` SET `banner_klick` = \''.$click.'\' WHERE `banner_id` ='.$nextrow['banner_id'].' LIMIT 1 ;');
    34.  $sql2 = mysql_query($sql2) or die ('не могу обновить клики');
    35.  header('location:'.$nextrow['banner_url']);
    36.  }
    37. }
    38. ?>

    [sql]CREATE TABLE `site_banners` (
    `banner_id` int(5) NOT NULL auto_increment,
    `banner_name` varchar(20) NOT NULL,
    `banner_url` varchar(255) NOT NULL,
    `banner_klick` int(15) default '0',
    `banner_see` int(15) default '0',
    PRIMARY KEY (`banner_id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1 ;[/sql]