ожалуйста помогите отредактировать php скрипт для перегонки логов squid в mysql
(изначально был он написан для MSSQL)
Проблема в том что он ничего не делает с mysql и
не создает таблицы и ничего в них не заносит!
--------------------------------------------------------------------------
<?
//устанавливаем соединение с базой
$host="localhost";
$user="root";
$passwd="123456";
$db_name="traffics";
//имя таблицы текущего месяца
$table_name_tek="q".date("Y_m");
//заносим данные из access.log в базу
error_reporting (E_ERROR);
function getadr($url)
{
$nachalo=strpos($url,"//")+2;
$str=substr($url,$nachalo);
$konec=strpos($str,"/");
$str=substr($str,0,$konec);
return $str;
}
function getstringparlog($str,&$masiv)
{
$mas=explode(" ",$str);
$j=0;
for ($i=0;$i<=count($mas);$i++)
{
if ($mas[$i] != "")
{
$masiv[$j]=$mas[$i];
$j++;
}
}
}
$filename="/var/log/squid/access.log.1"; //имя файла лога сквида
$mysql=mysql_connect($host,$user,$passwd);
if ($mysql==false) echo "False connect DB\n";
$res=mysql_select_db($db_name);
if ($res==false) echo "False select table\n";
//проверяем есть ли таблица за текущий месяц, если нет - создаём
$res = mysql_query("SELECT name FROM dbo.sysobjects");
$gr = mysql_num_rows($res);
$check_table=0;
for ($i = 0; $i < $gr; $i++)
{
if (mysql_result($res,$i,0) == $table_name_tek)
{
$check_table=1;
}
}
if ($check_table==0)
{
$query="create table $table_name_tek (
num int IDENTITY,
username char(20),
ip char(16),
podr char(20),
data int,
time int,
byte bigint,
url char(255),
)";
//
$res=mysql_query($query);
if ($res==false) {echo "False Create Table $table_name_tek\n";}
$query="CREATE UNIQUE INDEX indexStat1 ON $table_name_tek
(num, username, ip, podr, data, byte, url)";
$res=mysql_query($query);
if ($res==false) {echo "False Create Index $table_name_tek\n";}
}
//заносим данные в базу
$table_name=$table_name_tek;
$file=fopen($filename,"r");
while (feof($file)==false)
{
$text=fgets($file,1000);
getstringparlog($text,$masiv);
//проверяем был ли допущен бзер в инет
if (strtolower($masiv[3])!='tcp_denied')
{
//проверяем есть юзер в списке подразделений
//ищем файлы подразделений и проверяем есть ли в них юзер
$dir=opendir($dir_podr);
while ($file_podr=readdir($dir))
{
//читаем файл подразделения и ищем в нём имя юзера
if (($file_podr==".") or ($file_podr=="..")) {continue;}
$file_podr_h=fopen($dir_podr."/".$file_podr,"r");
while (feof($file_podr_h)==false)
{
$podr_user=fgets($file_podr_h,1000);
if (strtolower($masiv[7])."\n"==$podr_user)
{
//заносим данные юзера в базу
$date_time=explode(":",date("Y:m:d:H:i",$masiv[0]));
$data=$date_time[0].$date_time[1].$date_time[2];
$time=$date_time[3].$date_time[4];
$user=$masiv[7];
$ip=$masiv[2];
$byte=$masiv[4];
$url=getadr($masiv[6]);
$query="insert into $table_name (username,ip,podr,data,time,byte,url) values ('$user','$ip', '$file_podr',$data, $time,'$byte','$url')";
//echo $query;
//exit;
$res=mysql_query($query);
if ($res==false) echo "False\n";
}
}
}
closedir($dir);
}
}
fclose($file);
?>
--------------------------------------------------------------------------