Просмотр файла admin.php

Размер файла: 7.79Kb
<? //mysiera.ru
header("Content-type:text/html; charset=utf-8");
error_reporting  (E_ALL);

include "config.php";
require_once "../includes/start.php";
require_once "../includes/functions.php";
require_once "../includes/header.php";
include_once "../themes/".$config['themes']."/index.php";

if (!isset($_GET['pswrd'])) // Авторизация

{echo "
<BR><BR><BR><center>
<form action='admin.php' method=GET name=pass>Введите пароль: <BR><input type=password size=17 name=pswrd><BR><input type=submit value='Войти'>
<BR><BR><BR>";}
else {if ($_GET['pswrd']=="$password")
{ // Авторизация пройдена успешно


$shapka="<html><head>

<title>Информер - Админка</title>
<table width=50% cellpadding=1 cellspacing=0 border=1 bordercolor=#666666>
<center><a href=admin.php?pswrd=$password><h3>Информер - Админка</h3></a>

<TR height=10><TD align=center class=big_item_title>
<b>
:: <a href=admin.php?pswrd=$password&event=skin>Конфигурирование</a> ::
<a href='admin.php?pswrd=$password'>Главная админки</a> ::
<a href='../index.php'>Вернуться на главную</a> ::</B>
</td></tr>
<tr><td width=50%>
";


// Блок УДАЛЕНИЯ выбранного сообщения
if (isset($_GET['id'])) { $page=$_GET['page'];
$file=file($datafile); $itogo=count($file)-1;
$id=$itogo-$_GET['id'];
if ($itogo<1) {print"$back. Нужно оставить хотябы одно событие!"; exit;}

$fp=fopen($datafile,"w");
flock ($fp,LOCK_EX);
for ($i=0;$i< sizeof($file);$i++) { if ($i==$id) {unset($file[$i]);} }
fputs($fp, implode("",$file));
flock ($fp,LOCK_UN);
fclose($fp);

Header("Location: admin.php?pswrd=$password&page=$page"); exit; }





if (isset($_GET['event'])) {

if ($_GET['event']=="add") { // if ($event =="add")

$newmonth=$_POST['newmonth']; $msg=$_POST['msg']; $newday=$_POST['newday']; 
if (isset($_POST['page'])) {$page=$_POST['page'];} else {$page=1;}

$msg=stripslashes($msg);
$msg=htmlspecialchars($msg);
$msg=str_replace("|","I",$msg);
$msg=str_replace("\r\n","<br>",$msg);
$text="$newday|$newmonth|$msg|";

// если выбрано - редактирование
if (isset($_GET['rd'])) { $rd=$_GET['rd'];  //$rd - номер РЕДАКТИРУЕМОЙ ячейки
$file=file($datafile);
$fp=fopen($datafile,"a+");
flock ($fp,LOCK_EX);
ftruncate ($fp,0);//УДАЛЯЕМ СОДЕРЖИМОЕ ФАЙЛА
for ($i=0;$i< sizeof($file);$i++) {if ($rd!=$i) {fputs($fp,$file[$i]);} else {fputs($fp,"$text\r\n");}}
fflush ($fp);//очищение файлового буфера
flock ($fp,LOCK_UN);
fclose($fp);
}


else {
$fp=fopen($datafile,"a+");
flock ($fp,LOCK_EX);
fputs($fp,"$text\r\n");
fflush ($fp);//очищение файлового буфера
flock ($fp,LOCK_UN);
fclose($fp);
}

Header("Location: admin.php?pswrd=$password&page=$page"); exit; }


if ($_GET['event']=="skin")  {
print "$shapka

<table width=100%><TR><TD>
<center><B><font size=+1>Конфигурирование</font></b>

<form action=admin.php?pswrd=$password&event=config method=POST name=REPLIER>
<table>
<tr><td>Пароль админа</td><td><input type=text value='$password' name=password size=15 class=midle></tr></td>
<tr><td>Cколько выводить дат</td><td><input type=text value='$klvmsg' name=klvmsg size=10></tr></td>
<tr><td>Максимальное удалённое событие</td><td><input type=text value='$klvdays' name=klvdays size=10></tr></td>
<tr><td>Сообщений на страницу</td><td><input type=text value='$qq' name=qq size=10></tr></td>
<tr><td>Файл данных</td><td><input type=text value='$datafile' name=datafile size=20 class=midle></tr></td>
<tr><td colspan=2><center><table><tr><td><input type=submit value='Сохранить конфигурацию' class=text></form></td></tr></table>
</td></tr></table>

</TD></TR></TABLE>
</TD></TR></TBODY></TABLE>";
include_once "../themes/".$config['themes']."/foot.php";
exit;  }



if ($_GET['event']=="config")  {

$configdata="<? // [email protected] w-s.wapland.org\r\n".
"$"."password=\"$_POST[password]\"; // Пароль админа\r\n".
"$"."klvmsg=\"$_POST[klvmsg]\";  // Сколько выводить дат?\r\n".
"$"."klvdays=\"$_POST[klvdays]\";  // Максимальное удалённое событие\r\n".
"$"."datafile=\"$_POST[datafile]\"; // Имя файла базы данных\r\n".
"$"."qq=\"$_POST[qq]\"; // кол-во отображаемых событий в админке на странице\r\n".
"$"."date=date(\"d.m.Y\"); // число.месяц.год\r\n".
"$"."time=date(\"H:i:s\"); // часы:минуты:секунды \r\n?>";

$file=file("config.php");
$fp=fopen("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?pswrd=$password&event=skin"); exit; }

} // if isset['event']





print "$shapka <BR>";

$lines=file($datafile);
$itogo=count($lines);
$maxi=$itogo-1;

if (isset($_GET['page'])) {$page=$_GET['page'];} else {$page="1";}
if ($page=="0") {$page="1";} else {$page=abs($page);}
$maxpage=ceil(($maxi+1)/$qq); if ($page>$maxpage) {$page=$maxpage;}

$fm=$qq*($page-1); if ($fm>$maxi) {$fm=$maxi-$qq;}
  $lm=$fm+$qq; if ($lm>$maxi) {$lm=$maxi+1;} 

do {$dt=explode("|", $lines[$fm]); $fm++;
$num=$itogo-$fm;

print"
<TABLE border=0 width=350 align=center cellPadding=0 cellSpacing=0><TBODY>
<TR><TD width=25><B>$dt[0] $dt[1]</B></td><td><b>$dt[2]</b></TD>
<TD width=40><table><TR><TD bgcolor=#22FF44><B><a href='admin.php?pswrd=$password&rd=$num&page=$page'>.P.</a></TD><TD>&nbsp;&nbsp;</TD><TD bgcolor=#FF2244><a href='admin.php?pswrd=$password&id=$num&page=$page'>.X.</a></B></TD><TD> &nbsp;&nbsp;</TD></TR></TABLE>
</TD></TR></TBODY></TABLE><BR>";

} while($fm < $lm);

// выводим СПИСОК СТРАНИЦ
print "<center>Страницы:&nbsp; ";
for($i=0; $i<$maxi+1;) {$ip=$i/$qq+1;
if ($page==$ip) {print "<B>$ip</B> &nbsp;";} else {print "<a href='admin.php?pswrd=$password&page=$ip'>$ip</a> &nbsp;";}
$i=$i+$qq;} print "(дробление = <B>$qq</B>). Всего - <font color=red><B>$itogo<B></font>";


print"<BR><BR><TABLE border=0 width=250 align=center cellPadding=0 cellSpacing=0>
<TR height=20 align=center><TD><B>дата Д/М</B></TD><TD><B>Событие</B></TD></TR>";

// ищем сообщение для редактирования и выводим его в форму
if (isset($_GET['rd']))  {  $rd=$maxi-$_GET['rd'];
$dt=explode("|",$lines[$rd]);
$dt[0]=str_replace("<br>", "\r\n", $dt[0]);

print "<form action=admin.php?pswrd=$password&event=add&rd=$rd method=POST name=REPLIER>
<TR><TD>&nbsp; <input type=text name=newday value='$dt[0]' size=3 maxlength=2> &nbsp; <input type=text value='$dt[1]' name=newmonth size=3 maxlength=2> &nbsp;</TD><TD>
<textarea class=text cols=50 rows=2 size=500 name=msg>$dt[2]</textarea>
</TD></TR>
<input type=hidden name=page value='$page'>
<TR><TD>&nbsp;</TD><TD><BR><input class=text type=submit value='Изменить и сохранить'></form></TD></TR>";

} else  {

print "
<form action=admin.php?pswrd=$password&event=add method=POST name=REPLIER>
<TR><TD>&nbsp; <input type=text name=newday size=3 maxlength=2> &nbsp; <input type=text name=newmonth size=3 maxlength=2> &nbsp;</TD><TD>
<textarea class=text cols=50 rows=2 size=250 name=msg></textarea>
</TD></TR>
<TR><TD>&nbsp;</TD><TD><BR><input class=text type=submit value='Добавить'></form></TD></TR>";
}
print"</TD></TR></TABLE>";
}


}
include_once "../themes/".$config['themes']."/foot.php";
?>