Вход Регистрация
Файл: adminka.php
Строк: 319
<?php 
 
/* Скрипт знакомств без регистрации
 Автор: romanvht 
 roman.vkostin@gmail.com */ 
include 'inc/db.php'
include 
'inc/head.php';
include 
'inc/func.php'

$do in_t($_GET['do']); 
echo
'<div class="title">Админка</div>';

switch (
$do){
default:
echo
'<div class="text">';
echo
'<form action="?do=auth" method="post">
Логин:<br />
<input name="login" type="login" size="30" maxlength="30" /><br />
Пароль:<br />
<input name="pass" type="password" size="30" maxlength="30" /><br />
<input name="" type="submit" value="Войти" />
</form></div>'
;
if(
$_SESSION['admin'] == 1)header("Location: ?do=main");
break;

case 
'auth':
setcookie ("admlogin""$admlogin",time()*100);
setcookie ("admpass""$admpass",time()*100);
$log in_t($_POST['login']);
$pass in_t($_POST['pass']);
if(
$log == $admlogin && md5(sha1($pass)) == $admpass){
$_SESSION['admin'] = 1;
header("Location: ?do=main");
} else { echo 
'<div class="text">Введенный логин или пароль неверный!</div>'; }
break;

case 
'exit':
if(
$_SESSION['admin'] == 1){
setcookie ("admlogin""0",time()-3600*60*30);
setcookie ("admpass""0",time()-3600*60*30);
session_destroy();
echo 
'<div class="text">Вы вышли</div>';
} else { 
header("Location: ?"); }
break;

case 
'jal':
if(
$_SESSION['admin'] == 1){
    
$page=int($_GET['page']);  
    
$count=$db->query("SELECT `id` FROM `jalobs`")->num_rows;  
    
$n = new navigator($count'10''?do=jal&');
    
$array $db->query('SELECT * FROM `jalobs` ORDER BY `id` DESC '.$n->limit);
while(
$r $array->fetch_assoc())
{    
$new = ($r['view'] == '0') ? ' <span style="color: red;">[новая]</span>' '';
echo 
'<div class="text"><b>Жалоба на анкету:</b> '.$r[ank].'<br/>';
echo 
'<b>Дата:</b> '.vrem($r['date']).$new
echo 
'<br/>'.$r['text'];
echo 
'</br><a href="?do=inf&id='.$r['ank'].'">[Управление анкетой]</a>';
echo 
'</div>';
}
echo 
$n->navi();
$db->query("UPDATE `jalobs` SET `view` = '1' WHERE `view` = '0'");
} else { 
header("Location: ?"); }
break;

case 
'regions':
if(
$_SESSION['admin'] == 1){
    if(isset(
$_GET[del])){
    
$del int($_GET[del]);
    
$db->query("DELETE FROM `regions` WHERE `id` = '$del'");
    
$db->query("DELETE FROM `ankets` WHERE `region` = '$del'");
    
header("Location: ?do=regions");
    }
    if(isset(
$_POST[create])){
    
$create 0;
    
$name in_t($_POST[name]);
    
$db->query("INSERT INTO `regions` SET `name` = '$name'");
    
header("Location: ?do=regions");
    }
    
    echo 
'<div class="text"><form action="?do=regions" method="post">
Добавить регион:<br />
<input name="name" type="text" size="30" maxlength="30" /><br />
<input name="create" type="submit" value="Добавить" />
</form></div>'
;
$q $db->query("SELECT * FROM `regions` ORDER BY `name` ASC");
while(
$a $q->fetch_assoc())
{    
echo 
'<div class="text">- '.$a[name].' <a href="?do=regions&del='.$a[id].'">[уд]</a></div>';
}
} else { 
header("Location: ?"); }
break;

case 
'main':
if(
$_SESSION['admin'] == 1){
$newj $db->query("SELECT `id` FROM `jalobs` WHERE `view` = '0'")->num_rows;
echo
'<div class="menu"><a href="?do=inf">Управление анкетой</a></div>
<div class="menu"><a href="?do=jal">Жалобы ('
.$newj.' новых)</a></div>
<div class="menu"><a href="?do=regions">Регионы</a></div>
<div class="menu"><a href="?do=ban">Забанить IP</a></div>
<div class="menu"><a href="?do=noban">Разбанить IP</a></div>
<div class="menu"><a href="?do=exit">Снести сессию</a></div>'
;
} else { 
header("Location: ?do=index"); }
break;

case 
'ban':
if(
$_SESSION['admin'] == 1){
$ip htmlspecialchars(trim($_POST['ip']));
$id int($_GET[id]);
$a $db->query("SELECT `ip` FROM `ankets` WHERE `id` = '$id'")->fetch_assoc();
echo
'<div class="text">';
echo 
'<form action="?do=ban" method="post">
Введите IP:<br />
<input value="'
.$a[ip].'" name="ip" type="text" size="30" maxlength="30" /><br />
Причина:<br />
<textarea rows="5" cols="30" name="message"></textarea><br>
<input name="" type="submit" value="Забанить!" />
</form>'
;
if(!empty(
$ip) && !empty($message)){
$message in_t($_POST['message']);
echo 
'IP: '.$ip.' занесен в черный список';
$db->query('INSERT INTO `ban`(`ip`,`pri`) VALUES ("'.$ip.'","'.$message.'")');

echo 
'</div>';
} else { 
header("Location: ?"); }
break;

case 
'noban':
if(
$_SESSION['admin'] == 1){
$nob int($_POST['nob']);
echo
'<div class="text">';
if(!empty(
$nob)){
echo 
'IP разбанен';
$db->query('DELETE FROM `ban` WHERE `id` = "'.$nob.'"');
}
echo
'<form action="?do=noban" method="post">
Выберите:<br />'
;
echo
'<select name="nob">';
$sql $db->query("SELECT `id`,`ip` FROM `ban` ORDER BY id DESC");
while(
$r $sql->fetch_assoc())
{     
echo
'<option value="'.$r['id'].'">'.$r['ip'].'</option>';
}
echo
'</select><br />
<input name="" type="submit" value="Разбанить" />'
;
echo
'</form>';
echo
'</div>';
} else { 
header("Location: ?"); }
break;

case 
'clear':
if(
$_SESSION['admin'] == 1){
$db->query("TRUNCATE TABLE `ankets`");
$db->query("TRUNCATE TABLE `regions`");
unlink('foto');
echo
'<div class="text">База сайта очищена</div>';
} else { 
header("Location: ?"); }
break;

case 
'inf':
if(
$_SESSION['admin'] == 1){
$id int($_REQUEST['id']);
if(!empty(
$id)){
echo
'<div class="text">';
$a $db->query("SELECT * FROM `ankets` WHERE `id`='$id'")->fetch_assoc();
if(!empty(
$a[id])){
echo 
'<b>IP:</b> '.$a[ip].' <a href="?do=ban&id='.$a[id].'">Бан</a><br/>';
echo 
'</div>';
echo 
'<div class="text">';
echo (!empty(
$a[foto])) ? '<img src="/'.$a[foto].'"/ width="150">' 'Нет фото';
echo 
'</div><div class="text"><a href="?do=editfoto&id='.$a[id].'">Заменить фото</a> | <a href="?do=delfoto&id='.$a[id].'">Удалить</a><br/>';
echo 
'<a href="?do=edit&id='.$a[id].'">Изменить анкету</a><br/>';
echo 
'Удалить анкету <a href="?do=del&id='.$a[id].'">Да</a></div><div class="text">';
$img = ($a[sex] == 0) ? '<img src="/style/img/user.png"/>' '<img src="/style/img/woman.png"/>';
$r $db->query("SELECT `name` FROM `regions` WHERE `id` = '$a[region]'")->fetch_assoc();
echo 
$img.' <b>'.$a[name].' '.$a[fam].'</b> ('.$a[age].' лет)<br/>';
echo 
'<b>Номер:</b> '.$a[tel].'<br/>';
echo 
'<b>Адрес:</b> '.$r[name].', '.$a[city].'<br/>';
echo 
'<b>Цель знакомства:</b> '.$a[cel].'<br/>';
echo 
'<b>О себе:</b> '.$a[info].'</div>';
echo 
'<div class="text"><b>Дата добавления:</b> '.vrem($a[date]).'<br/>';
}else{
echo 
'Анкета была удалена!';
}
echo 
'</div>';
}else{ 
echo 
'<div class="text"><form action="?do=inf" method="post">
Введите ID анкеты:<br />
<input name="id" type="text" size="30" maxlength="30" /><br />
<input name="ok" type="submit" value="Управление" />
</form></div>'
;
}
} else { 
header("Location: ?"); }
break;

case 
'edit':
if(
$_SESSION['admin'] == 1){
$id int($_REQUEST[id]);
$a $db->query("SELECT * FROM `ankets` WHERE `id` = '$id'")->fetch_assoc();
if(empty(
$a[id])){
echo 
'<div class="text">Анкета не найдена</div>';
echo
'<div class="text">';
echo 
'<form action="?do=edit" method="post">';
echo 
'Введите ID: <br/><input name="id" type="text" size="11" maxlength="11" value="" /><br />';
echo 
'<input type="submit" value="Изменить анкету" name=""></form></div>';
}else{
//// Запросы
if(!empty($_POST[save])){
$name in_t($_POST[name]);
$fam in_t($_POST[fam]);
$age int($_POST[age]);
$sex int($_POST[sex]);
$tel int($_POST[tel]);
$region int($_POST[region]);
$city in_t($_POST[city]);
$cel in_t($_POST[cel]);
$info in_t($_POST[info]);
 echo
'<div class="text">';
 if(
strlen($name) < || strlen($name) > 30 $err.='- Слишком короткое или длинное имя! Max: 30, Min: 3<br>'
 if(
strlen($fam) < || strlen($fam) > 30 $err.='- Слишком короткая или длинная фамилия! Max: 30, Min: 3<br>'
 if(
strlen($age) < || strlen($age) > $err.='- Неверный возраст<br>'
 if(
strlen($city) < || strlen($city) > 80 $err.='- Слишком короткое/длинное название города<br>'
 if(
strlen($cel) < || strlen($cel) > 300 $err.='- Слишком короткая/длинная цель знакомства! Max: 300, Min: 3<br>'
 if(
strlen($tel) < 10 || strlen($tel) > 12 $err.='- Неверный номер телефона<br>'
 if(
strlen($info) < || strlen($info) > 500 $err.='- Слишком короткая/длинная информация о себе! Max: 500, Min: 3<br>'

if(empty(
$err)){
$db->query("UPDATE `ankets` SET `name` = '$name', `fam` = '$fam', `age` = '$age', `sex` = '$sex', `region` = '$region', `city` = '$city', `cel`= '$cel', `tel` =  '$tel', `info` =  '$info' WHERE `id` = '$a[id]'");
header("Location: ?do=inf&id=$a[id]");
}else{
echo 
'<div class="text">'.$err.'</div>';
   }
}
////
echo'<div class="text">';
echo 
'<form action="?do=edit" method="post">';
echo 
'Номер телефона (max: 11):<br />';
echo 
'<input name="tel" type="text" size="11" maxlength="11" value="'.$a[tel].'" />';
echo 
'<br/>Имя (max: 30):<br />';
echo 
'<input name="name" type="text" size="30" maxlength="30" value="'.$a[name].'" /><br />';
echo 
'Фамилия (max: 30):<br />';
echo 
'<input name="fam" type="text" size="30" maxlength="30" value="'.$a[fam].'" /><br />';
echo 
'<input name="age" type="text" size="3" maxlength="2" value="'.$a[age].'" /><br />';
echo 
'Ваш пол: <br/>';
echo 
'<select name="sex">';
if(
$a[sex] == 0){
echo 
'<option value="0">Мужской</option>';
echo 
'<option value="1">Женский</option>';
}else{
echo 
'<option value="1">Женский</option>';
echo 
'<option value="0">Мужской</option>';
}
echo 
'</select><br />';
echo 
'Регион: <br/>';
echo 
'<select name="region">';
$regus $db->query("SELECT `id`,`name` FROM `regions` WHERE `id` = '$a[region]'")->fetch_assoc();
echo 
'<option value="'.$regus[id].'">'.$regus[name].'</option>';
$q $db->query("SELECT `id`,`name` FROM `regions` ORDER BY `name` ASC");
while(
$r $q->fetch_assoc()){
echo 
'<option value="'.$r[id].'">'.$r[name].'</option>';
}
echo 
'</select><br />';
echo 
'Город (max: 80):<br />';
echo 
'<input name="city" type="text" size="30" maxlength="80" value="'.$a[city].'" /><br />';
echo 
'Цель знакомства (max: 300):<br />';
echo 
'<textarea rows="2" cols="30" name="cel">'.$a[cel].'</textarea><br>';
echo 
'О себе (max: 500): <br />
<textarea rows="5" cols="30" name="info">'
.$a[info].'</textarea><br>';
echo 
'<input type="hidden" value="'.$a[id].'" name="id"><input type="submit" value="Изменить анкету" name="save"></form></div>';
}
} else { 
header("Location: ?"); }
break;

case 
'del':
if(
$_SESSION['admin'] == 1){
$id abs(intval($_GET['id']));
$a $db->query("SELECT `id`,`foto` FROM `ankets` WHERE `id`='$id'")->fetch_assoc();
if(empty(
$a[id])){
echo 
'<div class="text">Ошибка при удалении</div>';
}else{
if(!empty(
$a[foto]))unlink($a[foto]);
$db->query('DELETE FROM `ankets` WHERE `id` = "'.$id.'"');
echo 
'<div class="text">Анкета успешно удалена</div>';
  }
} else { 
header("Location: ?"); }
break;

case 
'delfoto':
if(
$_SESSION['admin'] == 1){
$id abs(intval($_GET['id']));
$a $db->query("SELECT `id`,`foto` FROM `ankets` WHERE `id`='$id' LIMIT 1")->fetch_assoc();
if(empty(
$a[id])){
echo 
'<div class="text">Ошибка при удалении</div>';
}else{
if(!empty(
$a[foto]))unlink($a[foto]);
$db->query("UPDATE `ankets` SET `foto` = '' WHERE `id` = '$id'");
echo 
'<div class="text">Фото анкеты успешно удалено</div>';
echo
'<div class="menu"><a href="?do=inf&id='.$id.'">В админку</a></div>';
}
} else { 
header("Location: ?"); }
break;

case 
'editfoto':
if(
$_SESSION['admin'] == 1){
$id abs(intval($_GET['id']));
$a $db->query("SELECT `id`,`foto` FROM `ankets` WHERE `id`='$id' LIMIT 1")->fetch_assoc();
if(empty(
$a[id])){
echo 
'<div class="text">Анкета не существует блеать</div>';
}else{
echo
'<div class="text">';
/// Zapros
if(!empty($_POST[save])){
 
$pics = array('.jpg''.jpeg''.gif''.png'); 
 
$fname $_FILES['file']['name'];
 
$ext strtolower(strrchr($fname'.'));
 
$fsize $_FILES['file']['size']; 
 if (
$fsize > (1048576 1)) {
 
$err .= 'Размер фото превышает допустимое значение. [Max. 1mb.]<br />';
 } 
 if (
preg_match('/.php/i'$fname) || preg_match('/.pl/i'$fname) || $fname == '.htaccess' || !in_array($ext$pics)) {
 
$err .= 'Не верное расширение файла.<br />';
 } 
if(empty(
$err)){
 if(!empty(
$a[foto]))unlink($a[foto]); 
 
$foto 'foto/' md5(time()) . $ext;
 
copy($_FILES['file']['tmp_name'], $foto);
 
$db->query("UPDATE `ankets` SET `foto` = '$foto' WHERE `id` = '$a[id]'");
 
header("Location: ?do=inf&id=$a[id]");
}else{
echo 
$err;
  }
}
////
echo (empty($a[foto])) ? 'Нет фото' '<img width="100px" src="'.$a[foto].'"/>';
echo 
'</div><div class="text">';
echo 
'<form action="?do=editfoto&id='.$a[id].'" method="post" enctype="multipart/form-data">';
echo 
'Новое фото: (max. 1mb)<br /><input type="file" name="file"/><br />';
echo 
'<input type="submit" value="Добавить фото" name="save"></form></div>';
  }
} else { 
header("Location: ?"); }
break;
}
if(
$do != 'main')echo'<div class="menu"><a href="adminka.php">В админку</a></div>';
include 
'inc/foot.php';
?>
Онлайн: 2
Реклама