Просмотр файла download/include/add_cat.php

Размер файла: 4.59Kb
  1. <?php
  2.  
  3. $set['title'] = 'Загрузки / Создание категории';
  4. include H.'engine/includes/head.php';
  5.  
  6. if ($admin)
  7. {
  8. $al_ext = array('rar', 'zip', 'pdf', 'nth', 'txt', 'tar', 'gz', 'jpg', 'jpeg', 'gif', 'png', 'bmp', '3gp', 'mp3', 'mpg', 'sis', 'thm', 'jar', 'jad', 'cab', 'sis', 'sisx', 'exe', 'msi');
  9.  
  10. if (!$id) {
  11. $load_cat = $loadroot;
  12. }
  13. else {
  14. $sql->query("SELECT * FROM `down_files` WHERE `id` = '$id' AND `type` = 1 LIMIT 1");
  15. $res_down = $sql->fetch();
  16. if ($sql->num_rows() == 0 || !is_dir($res_down['dir'] . '/' . $res_down['name'])) {
  17. echo 'Каталог не существует';
  18. echo '<div class="err"><a href="index.php">К категориям</a></div>';
  19. include H.'engine/includes/foot.php';
  20. }
  21. $load_cat = $res_down['dir'] . '/' . $res_down['name'];
  22. }
  23. if (isset($_POST['submit'])) {
  24. $name = trim($_POST['name']);
  25. $rus_name = trim($_POST['rus_name']);
  26. if (empty($name) || empty($rus_name))
  27. $error = 'Не заполнено поле';
  28. if (preg_match("/[^0-9a-zA-Z]+/", $name))
  29. $error = 'Недопустимые символы в название папки<br/>';
  30.  
  31. $error_format = false;
  32. if ($admin && isset($_POST['user_down'])) {
  33. $format = trim($_POST['format']);
  34. $format_array = explode(', ', $format);
  35. foreach ($format_array as $value) {
  36. if (!in_array($value, $al_ext))
  37. $error_format .= 1;
  38. }
  39. $user_down = 1;
  40. $format_files = my_esc($_POST['format']);
  41. }
  42. else {
  43. $user_down = 0;
  44. $format_files = '';
  45. }
  46. if ($error_format)
  47. $error = 'Можно писать только следующие расширения: ' . implode(', ', $al_ext);
  48. if ($error) {
  49. echo $error;
  50. echo '<div class="err"><a href="index.php?act=add_cat&amp;id=' . $id . '">Повторить</a></div>';
  51. include H.'engine/includes/foot.php';
  52. }
  53. $name = my_esc($name);
  54. $rus_name = my_esc($rus_name);
  55. if(!is_dir("$load_cat/$name"))
  56. $dir = mkdir("$load_cat/$name", 0777);
  57. if ($dir == true) {
  58. chmod("$load_cat/$name", 0777);
  59. $sql->query("INSERT INTO `down_files` SET
  60. `refid`='$id',
  61. `dir`='$load_cat',
  62. `time`='$time',
  63. `name`='$name',
  64. `type` = '1',
  65. `field`='$user_down',
  66. `text` = '$format_files',
  67. `rus_name`='$rus_name'");
  68. $cat_id = mysqli_insert_id($sql->db);
  69. echo '<div class="msg">Папка создана</div>';
  70. echo '<a href="index.php?id=' . $cat_id . '">В папку</a><br/>';
  71. if (file_exists(H.'engine/files/tmp/download[dir='.$id.';page=1].swc'))
  72. unlink(H.'engine/files/tmp/download[dir='.$id.';page=1].swc');
  73. }
  74. else {
  75. echo 'Ошибка при создание категории';
  76. echo '<div class="err"><a href="index.php?act=add_cat&amp;id=' . $id . '">Повторить</a></div>';
  77. include H.'engine/includes/foot.php';
  78. }
  79. }
  80. else {
  81. echo '<div class="fmenu">Создание категории</div><div class="menu"><form action="index.php?act=add_cat&amp;id=' . $id . '" method="post">
  82. Название [A-Za-z0-9]:<br/><input type="text" name="name"/><br/>Название для отображения:<br/><input type="text" name="rus_name"/><br/>';
  83.  
  84. echo '<div class="status"><input type="checkbox" name="user_down" value="1" /> Выгрузка файлов юзерами<br/>
  85. Разрешенные расширение (zip, jar и тд.):<br/><input type="text" name="format"/></div>
  86. <div class="status">Можно писать только следующие расширения:<br /> ' . implode(', ', $al_ext) . '<br />Другие Расширения в целях безопасности к выгрузке допускаться не будут</div>';
  87. echo ' <input type="submit" name="submit" value="Создать"/><br /></form></div>';
  88. }
  89. echo '<div class="menu">';
  90. if ($id)
  91. echo '<a href="index.php?id=' . $id . '">Назад</a><br />';
  92. echo '<a href="index.php">К категориям</a></div>';
  93. }
  94. else {
  95. header('Location: ' . $home . '/?err');
  96. }