[ Index ] |
|
Code source de Joomla 1.0.13 |
1 <?php 2 /** 3 * @version $Id: banners.php 5072 2006-09-15 16:24:06Z friesengeist $ 4 * @package Joomla 5 * @subpackage Banners 6 * @copyright Copyright (C) 2005 Open Source Matters. All rights reserved. 7 * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.php 8 * Joomla! is free software. This version may have been modified pursuant 9 * to the GNU General Public License, and as distributed it includes or 10 * is derivative of works licensed under the GNU General Public License or 11 * other free or open source software licenses. 12 * See COPYRIGHT.php for copyright notices and details. 13 */ 14 15 // no direct access 16 defined( '_VALID_MOS' ) or die( 'Restricted access' ); 17 18 $bid = intval( mosGetParam( $_REQUEST, 'bid', 0 ) ); 19 20 switch($task) { 21 case 'click': 22 clickbanner( $bid ); 23 break; 24 25 default: 26 viewbanner(); 27 break; 28 } 29 30 function viewbanner() { 31 global $database, $mosConfig_live_site; 32 33 $query = "SELECT COUNT(*) AS numrows" 34 . "\n FROM #__banner" 35 . "\n WHERE showBanner = 1" 36 ; 37 $database->setQuery( $query ); 38 $numrows = $database->loadResult(); 39 if ($numrows === null) { 40 echo $database->stderr( true ); 41 return; 42 } 43 44 if ($numrows > 1) { 45 mt_srand( (double) microtime()*1000000 ); 46 $bannum = mt_rand( 0, --$numrows ); 47 } else { 48 $bannum = 0; 49 } 50 51 $banner = null; 52 $query = "SELECT *" 53 . "\n FROM #__banner" 54 . "\n WHERE showBanner = 1" 55 ; 56 $database->setQuery( $query, $bannum, 1 ); 57 if ($database->loadObject( $banner )) { 58 $query = "UPDATE #__banner" 59 . "\n SET impmade = impmade + 1" 60 . "\n WHERE bid = " . (int) $banner->bid 61 ; 62 $database->setQuery( $query ); 63 if(!$database->query()) { 64 echo $database->stderr( true ); 65 return; 66 } 67 $banner->impmade++; 68 69 if ($numrows > 0) { 70 // Check if this impression is the last one and print the banner 71 if ($banner->imptotal == $banner->impmade) { 72 $query = "INSERT INTO #__bannerfinish" 73 . "\n ( cid, type, name, impressions, clicks, imageurl, datestart, dateend )" 74 . "\n VALUES ( " . (int) $banner->cid . ", " . $database->Quote( $banner->type ) . ", " 75 . $database->Quote( $banner->name ) . ", " . (int) $banner->impmade . ", " . (int) $banner->clicks 76 . ", " . $database->Quote( $banner->imageurl ) . ", " . $database->Quote( $banner->date ) . ", 'now()' )" 77 ; 78 $database->setQuery( $query ); 79 if(!$database->query()) { 80 die($database->stderr(true)); 81 } 82 83 $query = "DELETE FROM #__banner" 84 . "\n WHERE bid = " . (int) $banner->bid 85 ; 86 $database->setQuery($query); 87 if(!$database->query()) { 88 die($database->stderr(true)); 89 } 90 } 91 92 if (trim( $banner->custombannercode )) { 93 echo $banner->custombannercode; 94 } else if (eregi( "(\.bmp|\.gif|\.jpg|\.jpeg|\.png)$", $banner->imageurl )) { 95 $imageurl = "$mosConfig_live_site/images/banners/$banner->imageurl"; 96 echo "<a href=\"".sefRelToAbs("index.php?option=com_banners&task=click&bid=$banner->bid")."\" target=\"_blank\"><img src=\"$imageurl\" border=\"0\" alt=\"Advertisement\" /></a>"; 97 98 } else if (eregi("\.swf$", $banner->imageurl)) { 99 $imageurl = "$mosConfig_live_site/images/banners/".$banner->imageurl; 100 echo "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\" border=\"5\"> 101 <param name=\"movie\" value=\"$imageurl\"><embed src=\"$imageurl\" loop=\"false\" pluginspage=\"http://www.macromedia.com/go/get/flashplayer\" type=\"application/x-shockwave-flash\"></embed></object>"; 102 } 103 } 104 } else { 105 echo " "; 106 } 107 } 108 109 /** 110 /* Function to redirect the clicks to the correct url and add 1 click 111 */ 112 function clickbanner( $bid ) { 113 global $database, $mainframe; 114 115 require_once( $mainframe->getPath( 'class' ) ); 116 117 $row = new mosBanner($database); 118 $row->load((int)$bid); 119 $row->clicks(); 120 121 $pat = "http.*://"; 122 if (!eregi( $pat, $row->clickurl )) { 123 $clickurl = "http://$row->clickurl"; 124 } else { 125 $clickurl = $row->clickurl; 126 } 127 mosRedirect( $clickurl ); 128 } 129 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Wed Nov 21 14:43:32 2007 | par Balluche grâce à PHPXref 0.7 |
![]() |