Не работает статистика кликов
28.07.2017, 20:21. Показов 741. Ответов 7
Всем привет! Скачал скрипт букса, и заметил ошибку. Когда заходишь в профиль пользователя, то "статистика кликов" не работает(Работает только "Всего", а дни недели, нет).
Вот PHP файл, который отвечает за это:

<?
function initstat($user,$di,$table,$typ,$w_x,$h_y ,$bg)
{
$color0='2d62cf';
$color1='f36701';
$color2='059300';
$color3='D61515';
$tmpstr=date("w"); // получаем текущий день в виде 1 2 3 ...
$u1=day($tmpstr-6);
$u2=day($tmpstr-5);
$u3=day($tmpstr-4);
$u4=day($tmpstr-3);
$u5=day($tmpstr-2);
$u6=day($tmpstr-1);
$u7=day($tmpstr); // Текущий день недели вида ПН ВТ СР
// переброзования дней недель в url символы
$datalabel=dayurl($u1).'|'.dayurl($u2).' |'.dayurl($u3).'|'.dayurl($u4).'|'.dayur l($u5).'|'.dayurl($u6).'|'.dayurl($u7);
//$datalabel2=dayurl('Пн').'|'.dayurl('Вт' ).'|'.dayurl('Ср').'|'.dayurl('Чт').'|'. dayurl('Пт').'|'.dayurl('Сб').'|'.dayurl ('Вс');
// =================== вытаскиваем все данные о текущем пользователе ======================================== ========================================
$row=mysql_fetch_array(mysql_query("sele ct stat from tb_users where username='$user' limit 1"));
$mass0=explode("~", $row["stat"]); // 0-день 1-тотал ссылки 2-ссылки 3-тотал задания 4-задания 5-тотал письма 6-письма
$den=$mass0[0]; // Время последнего обновления статистики
$total_s=$mass0[1]; // Всего ссылок просмотрено
$total_z=$mass0[3]; // Всего заданий выполнено
$total_p=$mass0[5]; // Всего писем просмотрено
$total_t=$mass0[7]; // Всего писем просмотрено
$mass1=explode(":", $mass0[2]);
$mass2=explode(":", $mass0[4]);
$mass3=explode(":", $mass0[6]);
$mass4=explode(":", $mass0[8]);
//echo 'Время последнего обновления статистики: '.date("<b>d.m.Y</b> в <b>H:i</b>",$den).' День: '.day(date('w',$den)).'['.date('w',$den).']<br>';
//echo 'Текущее время: '.date("<b>d.m.Y</b> в <b>H:i</b>",time()).' День: '.day(date('w',time())).'['.date('w',time()).']<br>';
$dayold=intval((time()-$den)/86400); // Определяем сколько полных дней прошло с момента последней обновления статистики
$daytek=date('w'); // получаем текущий день в виде 1 2 3 ...
$dayold2=date('w',$den); // день когда последний раз обновлялись
if(($daytek==$dayold2&&$dayold>3)||$dayo ld>=7)
{
$zp=time().'~'.$total_s.'~0:0:0:0:0:0:0~ '.$total_z.'~0:0:0:0:0:0:0~'.$total_p.'~ 0:0:0:0:0:0:0~'.$total_t.'~0:0:0:0:0:0:0 ~';
mysql_query("UPDATE tb_users SET stat='$zp' WHERE username='$user' limit 1");
for($i=0;$i<7;$i++)
{
$mass1[$i]=0;
$mass2[$i]=0;
$mass3[$i]=0;
$mass4[$i]=0;
}
}
else
{
$f=0;
$i=0;
$dtmp=$dayold2;
while($f==0)
{
if($dtmp+1>7)$dtmp-=7;
if($dtmp!=$daytek) { //echo ($dtmp+1).'<br>';
$mass1[$dtmp+1]=0;
$mass2[$dtmp+1]=0;
$mass3[$dtmp+1]=0;
$mass4[$dtmp+1]=0;
$dtmp++;
} else {$f=1; }
$i++;
}
if($i>1)
{
// Обновить данные
$zp=time().'~'.$total_s.'~'.$mass1[0].':'.$mass1[1].':'.$mass1[2].':'.$mass1[3].':'.$mass1[4].':'.$mass1[5].':'.$mass1[6].'~'.$total_z.'~'.$mass2[0].':'.$mass2[1].':'.$mass2[2].':'.$mass2[3].':'.$mass2[4].':'.$mass2[5].':'.$mass2[6].'~'.$total_p.'~'.$mass3[0].':'.$mass3[1].':'.$mass3[2].':'.$mass3[3].':'.$mass3[4].':'.$mass3[5].':'.$mass3[6].'~'.$total_t.'~'.$mass4[0].':'.$mass4[1].':'.$mass4[2].':'.$mass4[3].':'.$mass4[4].':'.$mass4[5].':'.$mass4[6].'~';
mysql_query("UPDATE tb_users SET stat='$zp' WHERE username='$user' limit 1");
}
if($daytek==0&&$daytek!=$dayold2) // сброс восскресенья
{
$mass1[$daytek]=0;
$mass2[$daytek]=0;
$mass3[$daytek]=0;
$mass4[$daytek]=0;
// Обновить данные
$zp=time().'~'.$total_s.'~'.$mass1[0].':'.$mass1[1].':'.$mass1[2].':'.$mass1[3].':'.$mass1[4].':'.$mass1[5].':'.$mass1[6].'~'.$total_z.'~'.$mass2[0].':'.$mass2[1].':'.$mass2[2].':'.$mass2[3].':'.$mass2[4].':'.$mass2[5].':'.$mass2[6].'~'.$total_p.'~'.$mass3[0].':'.$mass3[1].':'.$mass3[2].':'.$mass3[3].':'.$mass3[4].':'.$mass3[5].':'.$mass3[6].'~'.$total_t.'~'.$mass4[0].':'.$mass4[1].':'.$mass4[2].':'.$mass4[3].':'.$mass4[4].':'.$mass4[5].':'.$mass4[6].'~';
mysql_query("UPDATE tb_users SET stat='$zp' WHERE username='$user' limit 1");
}
}
// ======================================== ======================================== ======================================== ==============================
// клики
$s0=$mass1[daynum($u1)];
$s1=$mass1[daynum($u2)];
$s2=$mass1[daynum($u3)];
$s3=$mass1[daynum($u4)];
$s4=$mass1[daynum($u5)];
$s5=$mass1[daynum($u6)];
$s6=$mass1[daynum($u7)];
// заданияя
$z0=$mass2[daynum($u1)];
$z1=$mass2[daynum($u2)];
$z2=$mass2[daynum($u3)];
$z3=$mass2[daynum($u4)];
$z4=$mass2[daynum($u5)];
$z5=$mass2[daynum($u6)];
$z6=$mass2[daynum($u7)];
// письма
$m0=$mass3[daynum($u1)];
$m1=$mass3[daynum($u2)];
$m2=$mass3[daynum($u3)];
$m3=$mass3[daynum($u4)];
$m4=$mass3[daynum($u5)];
$m5=$mass3[daynum($u6)];
$m6=$mass3[daynum($u7)];
// тесты
$t0=$mass4[daynum($u1)];
$t1=$mass4[daynum($u2)];
$t2=$mass4[daynum($u3)];
$t3=$mass4[daynum($u4)];
$t4=$mass4[daynum($u5)];
$t5=$mass4[daynum($u6)];
$t6=$mass4[daynum($u7)];
$ss=array ($s0,$s1,$s2,$s3,$s4,$s5,$s6,$z0,$z1,$z2 ,$z3,$z4,$z5,$z6,$m0,$m1,$m2,$m3,$m4,$m5 ,$m6,$t0,$t1,$t2,$t3,$t4,$t5,$t6);
arsort($ss);
$max = current($ss);
$colorarray=$color0.','.$color1.','.$col or2.','.$color3; // массив цветов для графиков
$step=0;
if($max>=0&&$max<=10) $step=1;
if($max>=11&&$max<=20) $step=2;
if($max>=21&&$max<=50) $step=4;
if($max>=51&&$max<=100) $step=10;
$max=$max+$step;
$linestep=@(100/$max)*$step;
$data0=m($s0,$max).','.m($s1,$max).','.m ($s2,$max).','.m($s3,$max).','.m($s4,$ma x).','.m($s5,$max).','.m($s6,$max);
$data1=m($z0,$max).','.m($z1,$max).','.m ($z2,$max).','.m($z3,$max).','.m($z4,$ma x).','.m($z5,$max).','.m($z6,$max);
$data2=m($m0,$max).','.m($m1,$max).','.m ($m2,$max).','.m($m3,$max).','.m($m4,$ma x).','.m($m5,$max).','.m($m6,$max);
$data3=m($t0,$max).','.m($t1,$max).','.m ($t2,$max).','.m($t3,$max).','.m($t4,$ma x).','.m($t5,$max).','.m($t6,$max);
$data=$data0.'|'.$data1.'|'.$data2.'|'.$ data3;
$data_d2=$s0.','.$s1.','.$s2.','.$s3.',' .$s4.','.$s5.','.$s6.'|'.$z0.','.$z1.',' .$z2.','.$z3.','.$z4.','.$z5.','.$z6.'|' .$m0.','.$m1.','.$m2.','.$m3.','.$m4.',' .$m5.','.$m6.'|'.$t0.','.$t1.','.$t2.',' .$t3.','.$t4.','.$t5.','.$t6;
if($di==1)
{
if($typ==1)
{
?>
<img src="http://chart.googleapis.com/chart?cht=bvg&chs=<?=$w_x.'x'.$h_y?>&chd =t:<?=$data_d2?>&chxt=x,y&chxl=0:|<?=$da talabel?>&chg=16.667,<?=$linestep?>,1,1& chds=0,<?=$max?>&chco=<?=$colorarray?>&c hxr=1,0,<?=$max?>,<?=$step?>&chbh=a&chbh =r,0.2,1.5&chm=N,000000,0,,10|N,000000,1 ,,10|N,000000,2,,10|N,000000,3,,10">
<br>
<?}elseif($typ==0)
{
?>
<img src="http://chart.apis.google.com/chart?cht=lc&chco=<?=$colorarray?>&chg=1 6.667,<?=$linestep?>,1,1&chf=c,s,<?=$bg? >|bg,s,<?=$bg?>&chs=<?=$w_x.'x'.$h_y?>&c hd=t:<?=$data?>&chxt=t,r&chxl=0:|<?=$dat alabel?>&chxr=1,0,<?=$max?>,<?=$step?>&c hm=o,<?=$color0?>,0,0,6|o,<?=$color0?>,0 ,1,6|o,<?=$color0?>,0,2,6|o,<?=$color0?> ,0,3,6|o,<?=$color0?>,0,4,6|o,<?=$color0 ?>,0,5,6|o,<?=$color0?>,0,6,6|o,<?=$colo r1?>,1,0,6|o,<?=$color1?>,1,1,6|o,<?=$co lor1?>,1,2,6|o,<?=$color1?>,1,3,6|o,<?=$ color1?>,1,4,6|o,<?=$color1?>,1,5,6|o,<? =$color1?>,1,6,6|o,<?=$color2?>,2,0,6|o, <?=$color2?>,2,1,6|o,<?=$color2?>,2,2,6| o,<?=$color2?>,2,3,6|o,<?=$color2?>,2,4, 6|o,<?=$color2?>,2,5,6|o,<?=$color2?>,2, 6,6|o,<?=$color3?>,3,0,6|o,<?=$color3?>, 3,1,6|o,<?=$color3?>,3,2,6|o,<?=$color3? >,3,3,6|o,<?=$color3?>,3,4,6|o,<?=$color 3?>,3,5,6|o,<?=$color3?>,3,6,6">
<br>
<?
}
}
if($table==1)
{
?>
<br>
<table width="100%" class="statustable"><thead>
<tr>
<th width="18%"></th>
<th width="12%">Всего</th>
<th width="10%"><?=$u1?></th>
<th width="10%"><?=$u2?></th>
<th width="10%"><?=$u3?></th>
<th width="10%"><?=$u4?></th>
<th width="10%"><?=$u5?></th>
<th width="10%"><?=$u6?></th>
<th width="10%" class="current"><?=$u7?></th>
</tr></thead><tbody>
<tr>
<td align='center'><span style="color: #<?=$color0?>;">Серфинг</span></td>
<td class="high2" align='center'><? echo $duser["visits"]; ?></td>
<td align='center'><?=$s0?></td>
<td class="high2" align='center'><?=$s1?></td>
<td align='center'><?=$s2?></td>
<td class="high2" align='center'><?=$s3?></td>
<td align='center'><?=$s4?></td>
<td class="high2" align='center'><?=$s5?></td>
<td align='center'><?=$s6?></td>
</tr>
<tr>
<td align='center'><span style="color: #<?=$color1?>;">Задания</span></td>
<td class="high2" align='center'><? echo $duser["task"]; ?></td>
<td align='center'><?=$z0?></td>
<td class="high2" align='center'><?=$z1?></td>
<td align='center'><?=$z2?></td>
<td class="high2" align='center'><?=$z3?></td>
<td align='center'><?=$z4?></td>
<td class="high2" align='center'><?=$z5?></td>
<td align='center'><?=$z6?></td>
</tr>
<tr>
<td align='center'><span style="color:#<?=$color2?>;">Письма</span></td>
<td class="high2" align='center'><? echo $duser["views_mails"]; ?></td>
<td align='center'><?=$m0?></td>
<td class="high2" align='center'><?=$m1?></td>
<td align='center'><?=$m2?></td>
<td class="high2" align='center'><?=$m3?></td>
<td align='center'><?=$m4?></td>
<td class="high2" align='center'><?=$m5?></td>
<td align='center'><?=$m6?></td>
</tr>
<tr>
<td align='center'><span style="color:#<?=$color3?>;">Тесты</span></td>
<td class="high2" align='center'><? echo $duser["tests"]; ?></td>
<td align='center'><?=$t0?></td>
<td class="high2" align='center'><?=$t1?></td>
<td align='center'><?=$t2?></td>
<td class="high2" align='center'><?=$t3?></td>
<td align='center'><?=$t4?></td>
<td class="high2" align='center'><?=$t5?></td>
<td align='center'><?=$t6?></td>
</tr>
</tbody></table>
<?
}
elseif($table==2) // Вывод легенды
{
echo '<center>
<div class="legenda-stat">
<b style="color: #'.$color0.'">Серфинг <span title="Всего просмотрено ссылок в серфинге">['.$duser['visits'].']</span> —</b>
<b style="color: #'.$color1.'"> Задания <span title="Всего выполнено заданий">['.number_format($good_task['good_t'], 0, '.', '`').']</span> —</b>
<b style="color: #'.$color2.'"> Письма <span title="Всего прочитано писем">['.$duser['views_mails'].']</span></b>
</div></center>';
}
elseif($table==3)
{
$b1 = iconv("windows-1251", "utf-8", "Всего");
$b2 = iconv("windows-1251", "utf-8", "Серфинг");
$b3 = iconv("windows-1251", "utf-8", "Задания");
$b4 = iconv("windows-1251", "utf-8", "Письма");
$b5 = iconv("windows-1251", "utf-8", $u1);
$b6 = iconv("windows-1251", "utf-8", $u2);
$b7 = iconv("windows-1251", "utf-8", $u3);
$b8 = iconv("windows-1251", "utf-8", $u4);
$b9 = iconv("windows-1251", "utf-8", $u5);
$b10 = iconv("windows-1251", "utf-8", $u6);
$b11 = iconv("windows-1251", "utf-8", $u7);
?>
<br>
<table width="100%" class="statustable"><thead>
<tr>
<th width="18%"></th>
<th width="12%"><?=$b1?></th>
<th width="10%"><?=$b5?></th>
<th width="10%"><?=$b6?></th>
<th width="10%"><?=$b7?></th>
<th width="10%"><?=$b8?></th>
<th width="10%"><?=$b9?></th>
<th width="10%"><?=$b10?></th>
<th width="10%" class="current"><?=$b11?></th>
</tr></thead><tbody>
<tr>
<td><span style="color: #<?=$color0?>;"><?=$b2?></span></td>
<td class="high2"><? echo $duser["visits"]; ?></td>
<td><?=$s0?></td>
<td class="high2"><?=$s1?></td>
<td><?=$s2?></td>
<td class="high2"><?=$s3?></td>
<td><?=$s4?></td>
<td class="high2"><?=$s5?></td>
<td><?=$s6?></td>
</tr>
<tr>
<td><span style="color: #<?=$color1?>;"><?=$b3?></span></td><td class="high2"><?
echo number_format($good_task['good_t'], 0, '.', '`');
?></td>
<td><?=$z0?></td>
<td class="high2"><?=$z1?></td>
<td><?=$z2?></td>
<td class="high2"><?=$z3?></td>
<td><?=$z4?></td>
<td class="high2"><?=$z5?></td>
<td><?=$z6?></td>
</tr>
<tr>
<td><span style="color:#<?=$color2?>;"><?=$b4?></span></td>
<td class="high2"><? echo $duser["views_mails"]; ?></td>
<td><?=$m0?></td>
<td class="high2"><?=$m1?></td>
<td><?=$m2?></td>
<td class="high2"><?=$m3?></td>
<td><?=$m4?></td>
<td class="high2"><?=$m5?></td>
<td><?=$m6?></td>
</tr>
</tbody></table>
<?
}
}
function m($r,$m)
{
return @($r/$m)*100;
}
function dayurl($varstr)
{
if($varstr=='Пн') $day='%D0%9F%D0%BD';
if($varstr=='Вт') $day='%D0%92%D1%82';
if($varstr=='Ср') $day='%D0%A1%D1%80';
if($varstr=='Чт') $day='%D0%A7%D1%82';
if($varstr=='Пт') $day='%D0%9F%D1%82';
if($varstr=='Сб') $day='%D0%A1%D0%B1';
if($varstr=='Вс') $day='%D0%92%D1%81';
return $day;
}
function day($varstr)
{
if($varstr<0)$varstr=$varstr+7;
$day="";
if($varstr==1) $day='Пн';
if($varstr==2) $day='Вт';
if($varstr==3) $day='Ср';
if($varstr==4) $day='Чт';
if($varstr==5) $day='Пт';
if($varstr==6) $day='Сб';
if($varstr==0) $day='Вс';
return $day;
}
function daynum($varstr)
{
if($varstr=='Пн') $day='1';
if($varstr=='Вт') $day='2';
if($varstr=='Ср') $day='3';
if($varstr=='Чт') $day='4';
if($varstr=='Пт') $day='5';
if($varstr=='Сб') $day='6';
if($varstr=='Вс') $day='0';
return $day;
}
?>
|
0
|