395 lines
22 KiB
PHP
395 lines
22 KiB
PHP
|
<? // WR-Counter v 1.5 UTF-8 // 12.01.19 г. // Miha-ingener@yandex.ru
|
|||
|
|
|||
|
error_reporting (E_ALL); //error_reporting(0);
|
|||
|
ini_set('register_globals','off');// Все скрипты написаны для этой настройки php
|
|||
|
|
|||
|
include "data/config.php";
|
|||
|
|
|||
|
$back="<center>Вернитесь <a href='javascript:history.back(1)'><B>назад</B></a>"; // Удобная строка
|
|||
|
|
|||
|
$skey="56754"; // Секретный ключ НЕ МЕНЯТЬ !!!
|
|||
|
$adminname="admin"; $adminpass=$password; // Авторизация
|
|||
|
|
|||
|
function replacer2 ($text) { // ФУНКЦИЯ очистки кода
|
|||
|
$text=str_replace(" ",' ',$text);
|
|||
|
$text=str_replace(">",'>',$text);
|
|||
|
$text=str_replace("<",'<',$text);
|
|||
|
$text=str_replace("\"",'"',$text);
|
|||
|
$text=preg_replace("/\n\n/",'<p>',$text);
|
|||
|
$text=preg_replace("/\n/",'<br>',$text);
|
|||
|
$text=preg_replace("/\\\$/",'$',$text);
|
|||
|
$text=preg_replace("/\r/",'',$text);
|
|||
|
$text=preg_replace("/\\\/",'\',$text);
|
|||
|
// если magic_quotes включена - чистим везде СЛЭШи в этих случаях: одиночные (') и двойные кавычки ("), обратный слеш (\)
|
|||
|
if (get_magic_quotes_gpc()) { $text=str_replace("\"",'"',$text); $text=str_replace("\'",'\'',$text); $text=str_replace("\\",'\',$text); }
|
|||
|
$text=str_replace("\r\n","<br> ",$text);
|
|||
|
$text=str_replace("\n\n",'<p> ',$text);
|
|||
|
$text=str_replace("\n",'<br> ',$text);
|
|||
|
$text=str_replace("\t",'',$text);
|
|||
|
$text=str_replace("\r",'',$text);
|
|||
|
$text=str_replace(' ',' ',$text);
|
|||
|
return $text; }
|
|||
|
|
|||
|
|
|||
|
function unreplacer2 ($text) { // ФУНКЦИЯ замены спецсимволов конца строки на обычные
|
|||
|
$text=str_replace("<br>","<br>",$text);
|
|||
|
$text=str_replace("|","|",$text);
|
|||
|
return $text;}
|
|||
|
|
|||
|
|
|||
|
// Выбран ВЫХОД - очищаем куки
|
|||
|
if(isset($_GET['event'])) { if ($_GET['event']=="clearcooke") { setcookie("wrcounter","",time()-3600); Header("Location: index.php"); exit; } }
|
|||
|
|
|||
|
if (isset($_COOKIE['wrcounter'])) { // Сверяем имя/пароль из КУКИ с заданным в конфиг файле
|
|||
|
$text=$_COOKIE['wrcounter'];
|
|||
|
$text=trim($text); // Вырезает ПРОБЕЛьные символы
|
|||
|
if (strlen($text)>60) exit("Попытка взлома - длина переменной куки сильно большая!");
|
|||
|
$text=replacer2($text);
|
|||
|
$exd=explode("|",$text); $name1=$exd[0]; $pass1=$exd[1];
|
|||
|
|
|||
|
if (($name1!=$adminname) or ($pass1!=$adminpass)) {sleep(1); setcookie("wrcounter", "0", time()-3600); Header("Location: admin.php"); exit;}
|
|||
|
|
|||
|
} else { // ЕСЛИ ваще нету КУКИ
|
|||
|
|
|||
|
if (isset($_POST['name']) & isset($_POST['pass'])) { // Если есть переменные из формы ввода пароля
|
|||
|
$name=str_replace("|","I",$_POST['name']); $pass=str_replace("|","I",$_POST['pass']);
|
|||
|
$text="$name|$pass|";
|
|||
|
$text=trim($text); // Вырезает ПРОБЕЛьные символы
|
|||
|
if (strlen($text)<4) exit("$back Вы не ввели имя или пароль!");
|
|||
|
$text=replacer2($text);
|
|||
|
$exd=explode("|",$text); $name=$exd[0]; $pass=$exd[1];
|
|||
|
|
|||
|
//$qq=md5("$pass+$skey"); exit("$qq"); // РАЗБЛОКИРУЙТЕ для получения MD5 своего пароля!
|
|||
|
|
|||
|
// Сверяем введённое имя/пароль с заданным в конфиг файле
|
|||
|
$tektime=time();
|
|||
|
// присваиваются куки АДМИНИСТРАТОРУ
|
|||
|
if ($name==$adminname & md5("$pass+$skey")==$adminpass) {$wrcounter="$adminname|$adminpass|$tektime|"; setcookie("wrcounter", $wrcounter, time()+18000); Header("Location: admin.php"); exit;}
|
|||
|
exit("Ваши данные <B>ОШИБОЧНЫ</B>!</center>");
|
|||
|
|
|||
|
} else { // если нету данных, то выводим ФОРМУ ввода пароля
|
|||
|
|
|||
|
echo '<html><head><META HTTP-EQUIV="Pragma" CONTENT="no-cache"><META HTTP-EQUIV="Cache-Control" CONTENT="no-cache"><META content="text/html; charset=UTF-8" http-equiv=Content-Type><style>input, textarea {font-family:Verdana; font-size:12px; text-decoration:none; color:#000000; cursor:default; background-color:#FFFFFF; border-style:solid; border-width:1px; border-color:#000000;}</style></head><body>
|
|||
|
<BR><BR><BR><center>
|
|||
|
<table border=#C0C0C0 border=1 cellpadding=3 cellspacing=0 bordercolor=#959595>
|
|||
|
<form action="admin.php" method=POST name=pswrd>
|
|||
|
<TR><TD bgcolor=#C0C0C0 align=center>Администрирование скрипта</TD></TR>
|
|||
|
<TR><TD align=right>Введите логин: <input size=17 name=name value=""></TD></TR>
|
|||
|
<TR><TD align=right>Введите пароль: <input type=password size=17 name=pass></TD></TR>
|
|||
|
<TR><TD align=right>';
|
|||
|
|
|||
|
print"<TR><TD align=center><input type=submit style='WIDTH: 120px; height:20px;' value='Войти'>
|
|||
|
<SCRIPT language=JavaScript>document.pswrd.name.focus();</SCRIPT></TD></TR></table>
|
|||
|
<BR><BR><center><small>Powered by <a href=\"https://www.wr-script.ru\" title=\"Скрипт счётчика\" class='copyright'>WR-Counter</a> © 1.5<br></small></center></body></html>";
|
|||
|
exit;}
|
|||
|
|
|||
|
} // АВТОРИЗАЦИЯ ПРОЙДЕНА!
|
|||
|
|
|||
|
$gbc=$_COOKIE['wrcounter']; $gbc=explode("|", $gbc); $gbname=$gbc[0];$gbpass=$gbc[1];$gbtime=$gbc[2];
|
|||
|
if ($gbname==$adminname) $ktotut="1"; else $ktotut="2"; // Кто вошёл: админ или модер?
|
|||
|
|
|||
|
|
|||
|
|
|||
|
function prcmp2 ($a, $b) {if ($a==$b) return 0; if ($a<$b) return -1; return 1;}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
// Блок используется для удаления ПОДПИСЧИКА рассылки
|
|||
|
if(isset($_GET['xduser'])) {
|
|||
|
if ($_GET['xduser'] =="") {print"произошёл глюк-переглюк :-("; exit;}
|
|||
|
|
|||
|
$xduser=$_GET['xduser']-1;
|
|||
|
$file=file("database.php"); $i=count($file);
|
|||
|
if ($xduser<"1") {print "$back. 1 строкая является защитной! Её <B>НЕЛЬЗЯ УДАЛЯТЬ!</B>"; exit;}
|
|||
|
if ($i<"3") {print "$back. Необходимо оставить хотябы <B>ОДНОГО</B> участника!"; exit;}
|
|||
|
// удаляем строку с участником
|
|||
|
$fp=fopen("database.php","w");
|
|||
|
flock ($fp,LOCK_EX);
|
|||
|
for ($i=0;$i< sizeof($file);$i++) { if ($i==$xduser) {unset($file[$i]);} }
|
|||
|
fputs($fp, implode("",$file));
|
|||
|
flock ($fp,LOCK_UN);
|
|||
|
fclose($fp);
|
|||
|
@chmod("database.php", 0644);
|
|||
|
Header("Location: admin.php?event=statv"); exit; }
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
$shapka="<html><head>
|
|||
|
<title>Панель администрировния. Счётчик WR-Counter 1.5 UTF-8</title>
|
|||
|
<META HTTP-EQUIV=\"Pragma\" CONTENT=\"no-cache\">
|
|||
|
<META HTTP-EQUIV=\"Cache-Control\" CONTENT=\"no-cache\">
|
|||
|
<META content='text/html; charset=UTF-8' http-equiv=Content-Type>
|
|||
|
<style>
|
|||
|
BODY {FONT-FAMILY: Verdana}
|
|||
|
|
|||
|
a {text-decoration: underline; color: #000000;}
|
|||
|
a:visited {text-decoration: underline; color: #000000;}
|
|||
|
a:hover, a:active {text-decoration: underline; color: #FF9C00;}
|
|||
|
|
|||
|
A.about_menu {TEXT-DECORATION: none}
|
|||
|
A.about_menu:hover {COLOR: #996600}
|
|||
|
A.pagesLine {COLOR: #006600}
|
|||
|
A.menu {COLOR: #666666; TEXT-DECORATION: none}
|
|||
|
A.menu:hover {COLOR: #009900; TEXT-DECORATION: none}
|
|||
|
|
|||
|
.maininput {FONT-SIZE: 12px; WIDTH: 200px; font-size: 10; color: 000000; border: #808080 1 solid;}
|
|||
|
.simpleok {WIDTH: 50px; height:18px; background-color: cccccc; font-size: 10; color: 000000; font-weight: bold; border: #808080 1 solid;}
|
|||
|
.longok {WIDTH: 100px; height:20px; background-color: cccccc; font-size: 10; color: 000000; border: #808080 1 solid;}
|
|||
|
|
|||
|
input, textarea {font-family:Verdana; font-size:12px; text-decoration:none; color:#000000; cursor:default; background-color:#FFFFFF; border-style:solid; border-width:1px; border-color:#707070;}
|
|||
|
|
|||
|
.small {FONT-SIZE: 11px;}
|
|||
|
.smallest {FONT-SIZE: 9px;}
|
|||
|
|
|||
|
TD {FONT-SIZE: 11px}
|
|||
|
TD.menu {FONT-SIZE: 11px; FONT-WEIGHT: bold}
|
|||
|
TD.big_item_title {FONT-SIZE: 13px; FONT-WEIGHT: bold}
|
|||
|
TD.pagesLine {FONT-SIZE: 10px}
|
|||
|
|
|||
|
#copyright {FONT-SIZE: 10px; font-color: #666666}
|
|||
|
</STYLE>
|
|||
|
</head>
|
|||
|
<body bgcolor=\"#F3F3F3\"><center>
|
|||
|
|
|||
|
<table width=100% cellpadding=1 cellspacing=0 border=1 bordercolor=#666666>
|
|||
|
<TR height=30><TD align=center class=big_item_title>
|
|||
|
<b>
|
|||
|
<a href='admin.php?event=makeform'>Код счётчика</a> ::
|
|||
|
<a href='admin.php?event=config'>Конфигурация</a> ::
|
|||
|
<a href='admin.php?event=statv'>Статистика хиты/хосты</a> ::
|
|||
|
<a href='admin.php?event=seebasa'>Экспорт статистики в Excel/Calc</a> ::
|
|||
|
<a href='admin.php?event=clearcooke'>Выход</a> ::
|
|||
|
</td></tr>
|
|||
|
<tr><td width=100%>
|
|||
|
";
|
|||
|
|
|||
|
|
|||
|
// ничего не выбрано
|
|||
|
if(!isset($_GET['event'])) { print"$shapka <BR><BR><center><h3>Выберете действие в верхнем меню.</h2><BR><BR></TD></TR></TABLE>"; } // if !isset($event')
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
// Вывод формы, которую необходимо установить для пописки
|
|||
|
else { if ($_GET['event'] == "makeform") {
|
|||
|
|
|||
|
$host=$_SERVER["HTTP_HOST"]; $self=$_SERVER["PHP_SELF"];
|
|||
|
$cntrlurl="https://$host$self";
|
|||
|
$cntrlurl=str_replace("/admin.php","",$cntrlurl);
|
|||
|
|
|||
|
print"$shapka <center><br><BR>Код счётчика для вставки на любую страницу Вашего сайта, в том числе html<BR>
|
|||
|
<form><textarea rows=5 cols=70>
|
|||
|
<a href=\"$cntrlurl/info.php\"><img src=\"$cntrlurl/counter.php\" width=88 height=31 border=0></a>
|
|||
|
</textarea><BR><BR><br><BR></TD></TR></TABLE>";
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
if ($_GET['event']=="seebasa") { // Просмотр и ЭКСПОРТ СТАТИСТИКИ В Exclel / Calc с 11.2018
|
|||
|
|
|||
|
|
|||
|
// ЭКСПОРТ 11.2018
|
|||
|
if (isset($_GET['export'])) { $openfile=$_POST['openfile'];
|
|||
|
if (!stristr($openfile, ".csv")) exit("Разрешён экспорт только содержимого базы скрипта (всех файлов с раширением csv!");
|
|||
|
$records=file_get_contents("$coundir/$openfile");
|
|||
|
iconv("UTF-8", "windows-1251",$records); // Преобразовываем в кодировку Windos-1251
|
|||
|
//$records=str_replace(';',',',$records); если нужен разделитель запятая , то разкоментируйте
|
|||
|
header("Content-type: text/csv");
|
|||
|
header("Content-Disposition: attachment; filename=wr-counter-$openfile");
|
|||
|
header("Content-Transfer-Encoding: Windows-1251");
|
|||
|
header("Cache-Control: no-cache, no-store, must-revalidate");
|
|||
|
header("Pragma: no-cache");
|
|||
|
header("Expires: 0");
|
|||
|
echo $records; exit;} // КОНЕЦ ЭКСПОРТА В CSV
|
|||
|
|
|||
|
|
|||
|
|
|||
|
print"<BR>$shapka";
|
|||
|
|
|||
|
// Выводим форму для ЭКСПОРТА
|
|||
|
print"<BR><BR><form action='admin.php?event=seebasa&export' method=POST name=REPLIER>
|
|||
|
<table align=center><tr><td class=row2>Экспортировать файл: </td><td class=row1><select class=input name=openfile>";
|
|||
|
if ($handle=opendir($coundir)) {
|
|||
|
while (($file=readdir($handle)) !== false)
|
|||
|
if (!is_dir($file)) {
|
|||
|
$stroka=stristr($file, ".csv"); if (strlen($stroka)>"1")
|
|||
|
{ $marker=""; if (isset($_POST['openfile'])) { if ($_POST['openfile']===$file) $marker="selected"; }
|
|||
|
print"<option $marker value=\"$file\">$file</option>"; }
|
|||
|
} closedir($handle); } else echo'Ошибка!';
|
|||
|
echo'</select></td><td><center><input type=submit value="ЭКСПОРТИРОВАТЬ файл"></form></td></tr></table>';
|
|||
|
|
|||
|
// Выводим форму для ПРОСМОТРА ФАЙЛА
|
|||
|
print"<BR><BR><form action='admin.php?event=seebasa&see' method=POST name=REPLIER>
|
|||
|
<table align=center><tr><td class=row2>Просмотреть содержимое файла: </td><td class=row1><select class=input name=openfile>";
|
|||
|
if ($handle=opendir($coundir)) {
|
|||
|
while (($file=readdir($handle)) !== false)
|
|||
|
if (!is_dir($file)) {
|
|||
|
$stroka=stristr($file, ".csv"); if (strlen($stroka)>"1")
|
|||
|
{ $marker=""; if (isset($_POST['openfile'])) { if ($_POST['openfile']===$file) $marker="selected"; }
|
|||
|
print"<option $marker value=\"$file\">$file</option>"; }
|
|||
|
} closedir($handle); } else echo'Ошибка!';
|
|||
|
echo'</select></td><td><center><input type=submit value="Просмотреть файл"></form></td></tr></table>';
|
|||
|
|
|||
|
if (isset($_POST['openfile'])) {
|
|||
|
|
|||
|
$openfile=$_POST['openfile'];
|
|||
|
if (!stristr($openfile, ".csv")) exit("Разрешён просмотр только содержимого базы скрипта (всех файлов с раширением dat!");
|
|||
|
|
|||
|
$data=File("$coundir/$openfile");
|
|||
|
|
|||
|
echo "<b><i><h2><center>Содержимое файла \"$coundir/$openfile\"</b></i></h2>
|
|||
|
* В первой строке указаны номера по порядку. Если Вам нужно считать в скрипте представленные данные, то здесь Вы можете быстро узнать их порядковый номер!
|
|||
|
<table align=center border=0><tr>";
|
|||
|
|
|||
|
$dat_arr=explode(";",$data[0]);
|
|||
|
|
|||
|
for ($p=0;$p<count($dat_arr);$p++) echo "<td bgcolor=#04A2FF><center><b>$p</td>";
|
|||
|
echo "</tr>";
|
|||
|
|
|||
|
for ($i=0;$i<count($data);$i++) {
|
|||
|
$data_array=explode(";", $data[$i]);
|
|||
|
echo "<tr>";
|
|||
|
for ($f=0;$f<count($data_array);$f++) echo "<td bgcolor=#AEE1FF><center><b>$data_array[$f] </td>";
|
|||
|
echo "</tr>";
|
|||
|
}
|
|||
|
|
|||
|
echo "</table></center></form>
|
|||
|
</body>
|
|||
|
</html>";
|
|||
|
|
|||
|
} // if isset $_GET['openfile']
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
if ($_GET['event']=="statv") { // просмотр всей СТАТИСТИКИ
|
|||
|
print"<BR>$shapka"; include("info.php"); exit;}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
if ($_GET['event'] =="config") { // КОНФИГУРИРОВАНИЕ - выбор настроек
|
|||
|
// Получаем цвета для отображения
|
|||
|
$s1=dechex($s1r); $s1.=dechex($s1g); $s1.=dechex($s1b);
|
|||
|
$s2=dechex($s2r); $s2.=dechex($s2g); $s2.=dechex($s2b);
|
|||
|
$s3=dechex($s3r); $s3.=dechex($s3g); $s3.=dechex($s3b);
|
|||
|
if ($image=="counter1.png") {$i1="checked";} else {$i1="";}
|
|||
|
if ($image=="counter2.png") {$i2="checked";} else {$i2="";}
|
|||
|
if ($image=="counter3.png") {$i3="checked";} else {$i3="";}
|
|||
|
if ($image=="counter4.png") {$i4="checked";} else {$i4="";}
|
|||
|
if ($image=="counter5.png") {$i5="checked";} else {$i5="";}
|
|||
|
if ($image=="counter6.png") {$i6="checked";} else {$i6="";}
|
|||
|
if ($image=="counter7.png") {$i7="checked";} else {$i7="";}
|
|||
|
if ($image=="counter8.png") {$i8="checked";} else {$i8="";}
|
|||
|
|
|||
|
if ($sendstat=="1") {$m1="checked"; $m2="";} else {$m2="checked"; $m1="";}
|
|||
|
if ($gtype=="1") {$g1="checked"; $g2="";} else {$g2="checked"; $g1="";}
|
|||
|
print "$shapka
|
|||
|
<BR><table border=1 width=750 align=center cellpadding=3 cellspacing=0 bordercolor=#DDDDDD class=forumline><tr bgcolor=#BBBBBB height=25 align=center>
|
|||
|
<td><B>Переменная</B></td><td><B>Значение</B></td></tr><form action='admin.php?event=confignext' method=post name=REPLIER>
|
|||
|
<tr><td class=row2>Пароль администратора *</td><td class=row1><input name=password type=hidden value='$password'><input class=post type=text value='скрыт' maxlength=20 name=newpassword size=15> (зашифрован и скрыт)</td></tr>
|
|||
|
<tr><td>Емайл админа</td><td><input type=text value='$adminemail' name=adminemail size=30></tr></td>
|
|||
|
<tr><td>Мылить статистику админу? Периодичность?</td><td><input type=radio name=sendstat value=\"1\"$m1> да <input type=radio name=sendstat value=\"0\"$m2> нет
|
|||
|
<input type=text value='$sendday' maxlength=2 name=sendday size=2> (число от 1 до 99 дней)</tr></td>
|
|||
|
<tr><td>Тип графика</td><td><input type=radio name=gtype value=\"1\"$g1> вертикальный <input type=radio name=gtype value=\"0\"$g2> горизонтальный</tr></td>
|
|||
|
<tr><td>Коэффициент масштабирования<BR> графика ХИТОВ / ХОСТОВ ?</td><td><input type=text value='$scale1' maxlength=5 name=scale1 size=5> .:. <input type=text value='$scale2' name=scale2 maxlength=5 size=5> По умолчанию: <B><U>0.5</U> и <U>2</U></B>.</tr></td>
|
|||
|
<tr><td>Сколько суток хранить статистику?</td><td><input type=text value='$days' name=days maxlength=2 size=5> (рекомендую месяц - 30 дней)</tr></td>
|
|||
|
<tr><td>Путь к папке с данными</td><td><input type='text' value='$coundir' name=coundir maxlength=20 size=15> По умолчанию: "<B><U>./data</U></B>".</tr></td>";
|
|||
|
|
|||
|
// Определяем размер БД с 11.2018 г.
|
|||
|
$bdsize=0; $itogofiles=0;
|
|||
|
if ($handle=opendir($coundir))
|
|||
|
{while (($file=readdir($handle))!==false)
|
|||
|
if (!is_dir($file)) {$itogofiles++; $bdsize=$bdsize+filesize("$coundir/$file");}
|
|||
|
closedir($handle);}
|
|||
|
$bdsize=round($bdsize/1048576,1);
|
|||
|
$razmerbd="файлы статистики: <B>$bdsize MБ.</B> [$itogofiles файлов]";
|
|||
|
|
|||
|
|
|||
|
print"<tr><td>Занято на диске</td><td>$razmerbd</td></tr>
|
|||
|
<tr><td>файл с рисунком счётчика</td><td>
|
|||
|
<input type=radio name=image value='counter1.png' $i1><img src='images/counter1.png'>
|
|||
|
<input type=radio name=image value='counter2.png' $i2><img src='images/counter2.png'>
|
|||
|
<input type=radio name=image value='counter3.png' $i3><img src='images/counter3.png'>
|
|||
|
<input type=radio name=image value='counter4.png' $i4><img src='images/counter4.png'> <BR>
|
|||
|
<input type=radio name=image value='counter5.png' $i5><img src='images/counter5.png'>
|
|||
|
<input type=radio name=image value='counter6.png' $i6><img src='images/counter6.png'>
|
|||
|
<input type=radio name=image value='counter7.png' $i7><img src='images/counter7.png'>
|
|||
|
<input type=radio name=image value='counter8.png' $i8><img src='images/counter8.png'>
|
|||
|
</tr></td>
|
|||
|
|
|||
|
<tr><td>RGB цвет 1-й цифры на счётчике</td><td><input type=text value='$s1r' name=s1r maxlength=3 size=3> <input type=text value='$s1g' name=s1g maxlength=3 size=3> <input type=text value='$s1b' name=s1b maxlength=3 size=3> (число от 001 до 255) Так выглядит: <B><font color='$s1'>1234567890</font></B></tr></td>
|
|||
|
<tr><td>RGB цвет 2-й цифры на счётчике</td><td><input type=text value='$s2r' name=s2r maxlength=3 size=3> <input type=text value='$s2g' name=s2g maxlength=3 size=3> <input type=text value='$s2b' name=s2b maxlength=3 size=3> (число от 001 до 255) Так выглядит: <B><font color='$s2'>1234567890</font></B></tr></td>
|
|||
|
<tr><td>RGB цвет 3-й цифры на счётчике</td><td><input type=text value='$s3r' name=s3r maxlength=3 size=3> <input type=text value='$s3g' name=s3g maxlength=3 size=3> <input type=text value='$s3b' name=s3b maxlength=3 size=3> (число от 001 до 255) Так выглядит: <B><font color='$s3'>1234567890</font></B></tr></td>
|
|||
|
|
|||
|
<TR><TD>Пример работы счётчика: </TD><TD><a href='info.php' target='_blank'><img src='counter.php' width='88' height='31' border=0></a></TD></TR>
|
|||
|
|
|||
|
<tr><td colspan=2><BR><center><input type=submit value='Сохранить конфигурацию'>
|
|||
|
</form></td></tr></table><center><br>* Если хотите изменить пароль - сотрите слово <B>\"скрыт\"</B> и введите новый пароль.<br> Рекомендую использовать тольео буквы и/или цифры.<br><br></td></tr></table>";
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// Конфигурирование ШАГ 2 - сохранение данных
|
|||
|
if ($_GET['event'] =="confignext") {
|
|||
|
|
|||
|
// обработка полей пароль админа/модератора
|
|||
|
if (strlen($_POST['newpassword'])<1) exit("$back разрешается длина пароля МИНИМУМ 1 символ!");
|
|||
|
if ($_POST['newpassword']!="скрыт") {$pass=trim($_POST['newpassword']); $_POST['password']=md5("$pass+$skey");}
|
|||
|
|
|||
|
$configdata="<? // WR-Counter v 1.5 UTF-8 // 24.12.18 г. // Miha-ingener@yandex.ru\r\n".
|
|||
|
"$"."password=\"".$_POST['password']."\"; // Пароль админа защифрован md5()\r\n".
|
|||
|
"$"."adminemail=\"".$_POST['adminemail']."\"; // Емайл админа\r\n".
|
|||
|
"$"."sendstat=\"".$_POST['sendstat']."\"; // Мылить статистику посещений админу?\r\n".
|
|||
|
"$"."sendday=\"".$_POST['sendday']."\"; // Периодичность рассылки статистики\r\n".
|
|||
|
"$"."gtype=\"".$_POST['gtype']."\"; // Тип графика - горизонтальный / вертикальный ( 1/0 )\r\n".
|
|||
|
"$"."days=\"".$_POST['days']."\"; // Сколько суток хранить статистику?\r\n".
|
|||
|
"$"."scale1=\"".$_POST['scale1']."\"; // Коэффициент масштабирования графика ХИТОВ\r\n".
|
|||
|
"$"."scale2=\"".$_POST['scale2']."\"; // Коэффициент масштабирования графика ХОСТОВ\r\n".
|
|||
|
"$"."coundir=\"".$_POST['coundir']."\"; // Путь к папке с данными счётчика '.' - текущая папка\r\n".
|
|||
|
"$"."image=\"".$_POST['image']."\"; // имя файла с рисунком счётчика\r\n".
|
|||
|
"$"."s1r=\"".$_POST['s1r']."\"; $"."s1g=\"".$_POST['s1g']."\"; $"."s1b=\"".$_POST['s1b']."\"; // RGB - 1-й цифры\r\n".
|
|||
|
"$"."s2r=\"".$_POST['s2r']."\"; $"."s2g=\"".$_POST['s2g']."\"; $"."s2b=\"".$_POST['s2b']."\"; // RGB - 2-й цифры\r\n".
|
|||
|
"$"."s3r=\"".$_POST['s3r']."\"; $"."s3g=\"".$_POST['s3g']."\"; $"."s3b=\"".$_POST['s3b']."\"; // RGB - 3-й цифры\r\n".
|
|||
|
"$"."date=date(\"d.m.Y\"); // число.месяц.год\r\n".
|
|||
|
"$"."time=date(\"H:i:s\"); // часы:минуты:секунды\r\n?>";
|
|||
|
|
|||
|
$file=file("data/config.php");
|
|||
|
$fp=fopen("data/config.php","a+");
|
|||
|
flock ($fp,LOCK_EX);
|
|||
|
ftruncate ($fp,0);//УДАЛЯЕМ СОДЕРЖИМОЕ ФАЙЛА
|
|||
|
fputs($fp,$configdata);
|
|||
|
fflush ($fp);//очищение файлового буфера
|
|||
|
flock ($fp,LOCK_UN);
|
|||
|
fclose($fp);
|
|||
|
Header("Location: admin.php"); exit; }
|
|||
|
|
|||
|
|
|||
|
|
|||
|
} // if isset $event
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
print"<BR><small>Сегодня <b>$date г.</b></small>";
|
|||
|
|
|||
|
?>
|
|||
|
</td></tr></table></td></tr></table>
|
|||
|
<center><small>Powered by <a href="https://www.wr-script.ru/" target="_blank">WR-Counter</a> 1.5 UTF-8 ©<br /></small></center>
|
|||
|
</body></html>
|