Просмотр файла www/rotation_reklama_25.php

Размер файла: 6.52Kb
<?php
header ("Content-Type: text/plain; Charset=windows-1251");
$rootpath="/home/kmx/includes/";
$sitespath="/home/kmx/www/sites";
include($rootpath."function.inc");

define("DBName","kmx");
define("HostName","localhost");
define("UserName","kmx");
define("Password","kmx-hosting");

$connectserv=@mysql_connect(HostName, UserName, Password);
$selectDB=@mysql_select_db(DBName);
$connect_bd=(($connectserv!=0)&&($selectDB!=0));

if (!$connect_bd) die('Ошибка подключения к базе');

# Сбрасываем метки
@mysql(DBName,"UPDATE `fwdmagsu` SET `flag` = '0'");

# Выбираем TOP-25 по хостам за последние сутки
$q=@mysql(DBName,"SELECT `login` FROM `counter` WHERE `hit` > 0 AND `login` != 'wap' AND `login` != 'catalog' AND `login` != 'top' ORDER BY `host24` DESC LIMIT 0, 25");
$s=@mysql_num_rows($q);

# Перебираем топ
for ($i=0;$i<$s;$i++)
	{
	$data=@mysql_fetch_array($q);

	$q2=@mysql(DBName,"SELECT `login` FROM `fwdmagsu` WHERE `login` = '".$data['login']."' LIMIT 0, 1");
	$s2=@mysql_num_rows($q2);

    # Старые сайты метим на сохранение, новые пишем в массив.
	if ($s2>0)
		{
		@mysql(DBName,"UPDATE `fwdmagsu` SET `flag` = '1' WHERE `login` = '".$data['login']."' LIMIT 1");
		echo "Обновляется - ".$data['login']."\n";
		}
	else
		{
		$newsite[]=$data['login'];
		echo "Добавляется - ".$data['login']."\n";
		}
	}

# Выбираем сайты не помеченные на сохранение
$q=@mysql(DBName,"SELECT `login` FROM `fwdmagsu` WHERE `flag` = '0'");
$s=@mysql_num_rows($q);

# Пробегаем по удаляемым
for ($i=0;$i<$s;$i++)
	{
	# Здесь удаляем рекламу со всех страниц сайта
	$data=@mysql_fetch_array($q);
    echo "Удаляется - ".$data['login']."\n";

	# Читаем список WML-файлов сайта
    $site=$data['login'];
	unset($files);
	array($files);
	$d=dir($sitespath.'/'.$site);
	while ($currentfile=$d->read())
	    {
	    if (filetype($sitespath.'/'.$site.'/'.$currentfile)!='file') continue;
	    if (substr($currentfile,-4)!='.wml') continue;
	    if (($currentfile=='..')||($currentfile=='.')) continue;
	    $files[]=$currentfile;
	    }
	$d->close();
	@sort($files, SORT_STRING);

	# Обрабатываем найденные файлы
	while ($_file=@each($files))
	    {
	    $wmlfile=$_file[1];

		$found=false;
		$npage='';
		$page=file($sitespath.'/'.$site.'/'.$wmlfile);
		for ($i=0;$i<sizeof($page);$i++)
			{
			if (substr(trim($page[$i]),0,10)=='<!-- * -->')
				{
				$npage.="<!-- * -->\n";
				$found=true;
				}
			else $npage.=trim($page[$i])."\n";
			if (trim($page[$i])=='</p></card></wml>') break;
			}

		$fp = fopen ($sitespath.'/'.$site.'/'.$wmlfile, "w+");
		fwrite ($fp, $npage);
		fclose ($fp);

		if ($found) print "\t- ".$wmlfile."\n";
		}
	}

# Удаляем сайты из форвард-таблицы
@mysql(DBName,"DELETE FROM `fwdmagsu` WHERE `flag` = '0'");

# Перебираем новые и присваиваем им свободные номера в таблице
$num=101;
for ($i=0;$i<sizeof($newsite);$i++)
	{
	while (@mysql_num_rows(@mysql(DBName,"SELECT `login` FROM `fwdmagsu` WHERE `num` = '".$num."' LIMIT 0, 1"))>0) $num++;
	@mysql(DBName,"INSERT INTO `fwdmagsu` ( `login` , `num` , `flag` ) VALUES ( '".$newsite[$i]."' , '".$num."' , '1' )");
	}

# Выбираем сайты выбранные под рекламу
$q=@mysql(DBName,"SELECT `login` , `num` FROM `fwdmagsu`");
$s=@mysql_num_rows($q);

# Пробегаем по выбранным
for ($i=0;$i<$s;$i++)
	{
	# Здесь добавляем/меняем рекламу на всех страницах сайта
	$data=@mysql_fetch_array($q);
    echo "В базе - ".$data['num'].":".$data['login']."\n";

	# Читаем список WML-файлов сайта
    $site=$data['login'];
	unset($files);
	array($files);
	$d=dir($sitespath.'/'.$site);
	while ($currentfile=$d->read())
	    {
	    if (filetype($sitespath.'/'.$site.'/'.$currentfile)!='file') continue;
	    if (substr($currentfile,-4)!='.wml') continue;
	    if (($currentfile=='..')||($currentfile=='.')) continue;
	    $files[]=$currentfile;
	    }
	$d->close();
	@sort($files, SORT_STRING);

	# Обрабатываем найденные файлы
	while ($_file=@each($files))
	    {
	    $wmlfile=$_file[1];

		$found=false;
		$npage='';
		$page=file($sitespath.'/'.$site.'/'.$wmlfile);
		for ($i=0;$i<sizeof($page);$i++)
			{
			if (substr(trim($page[$i]),0,10)=='<!-- * -->')
				{
				$reklama='';
	            $random = ('0.'.substr(mt_rand(),1))+0;
	                if ($random<=0.1)   $reklama=cyr2utf('<a href="http://mag.su/java.php?pi='.$data['num'].'">Лучшие Java</a>');
	            elseif ($random<=0.35)  $reklama=cyr2utf('<a href="http://mag.su/poly.php?pi='.$data['num'].'">Мелодии</a>');
	            elseif ($random<=0.50)  $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=7">"Для взрослых"</a>');
	            elseif ($random<=0.65)  $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=dol">Лучше и дешевле!</a>');
	            elseif ($random<=0.7)   $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=10">Новогодние</a>');
	            elseif ($random<=0.735) $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=1">Аркады</a>');
	            elseif ($random<=0.77)  $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=2">Симуляторы</a>');
	            elseif ($random<=0.805) $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=3">Головоломки</a>');
	            elseif ($random<=0.84)  $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=4">Ролевые Java-игры</a>');
	            elseif ($random<=0.875) $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=5">Стратегии</a>');
	            elseif ($random<=0.91)  $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=6">Java-Спорт</a>');
	            elseif ($random<=0.945) $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=8">Приключения</a>');
	            elseif ($random<=0.98)  $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=9">Полезные Java-приложения</a>');
	            elseif ($random<=1.0)   $reklama=cyr2utf('<a href="http://mag.su/javalist.php?pi='.$data['num'].'&amp;g=new">Новинки</a>');

                $reklama='<small><b>'.$reklama.'</b></small><br/>';
				$npage.='<!-- * -->'.$reklama."\n";

				$found=true;
				}
			else $npage.=trim($page[$i])."\n";
			if (trim($page[$i])=='</p></card></wml>') break;
			}

		$fp = fopen ($sitespath.'/'.$site.'/'.$wmlfile, "w+");
		fwrite ($fp, $npage);
		fclose ($fp);

		if ($found) print "\t- ".$wmlfile."\n";
		}
	}


?>