0) { echo functions::display_error($lng_forum['error_file_uploaded']); require('../incfiles/end.php'); exit; } $fs = ($_POST['fs'] > 0 && $_POST['fs'] <= $set['fput'] ? $_POST['fs'] : 1); switch ($res['type']) { case "m": if (isset($_POST['submit1'])) { /* ----------------------------------------------------------------- Проверка, был ли выгружен файл и с какого браузера ----------------------------------------------------------------- */ for ($i1 = 0; $i1 <= $fs; $i1++) { $do_file = false; if ($_FILES['fail_'.$i1]['size'] > 0) { // Проверка загрузки с обычного браузера $do_file = true; $fname = strtolower($_FILES['fail_'.$i1]['name']); $fsize = $_FILES['fail_'.$i1]['size']; } /* ----------------------------------------------------------------- Обработка файла (если есть), проверка на ошибки ----------------------------------------------------------------- */ if ($do_file) { echo functions::checkout($fname).': '; // Список допустимых расширений файлов. $al_ext = array_merge($ext_win, $ext_java, $ext_sis, $ext_doc, $ext_pic, $ext_arch, $ext_video, $ext_audio, $ext_other); $ext = explode(".", $fname); $error = array(); // Проверка на допустимый размер файла if ($fsize > 1024 * $set['flsz']) $error[] = $lng_forum['error_file_size'] . ' ' . $set['flsz'] . 'kb.'; // Проверка файла на наличие только одного расширения if (count($ext) != 2) $error[] = $lng_forum['error_file_name']; // Проверка допустимых расширений файлов if (!in_array($ext[1], $al_ext)) $error[] = $lng_forum['error_file_ext'] . ':
' . implode(', ', $al_ext); // Проверка на длину имени if (strlen($fname) > 30) $error[] = $lng_forum['error_file_name_size']; // Проверка на запрещенные символы if (preg_match("/[^\da-z_\-.]+/", $fname)) $error[] = $lng_forum['error_file_symbols']; // Проверка наличия файла с таким же именем if (file_exists("../files/forum/attach/$fname")) { $fname = time() . $fname; } // Окончательная обработка if (!$error) { // Для обычного браузера if ((move_uploaded_file($_FILES["fail_".$i1]["tmp_name"], "../files/forum/attach/$fname")) == true) { @chmod("$fname", 0777); @chmod("../files/forum/attach/$fname", 0777); echo $lng_forum['file_uploaded'] . '
'; } else { $error[] = $lng_forum['error_upload_error']; } // Определяем тип файла $ext = strtolower($ext[1]); if (in_array($ext, $ext_win)) $type = 1; elseif (in_array($ext, $ext_java)) $type = 2; elseif (in_array($ext, $ext_sis)) $type = 3; elseif (in_array($ext, $ext_doc)) $type = 4; elseif (in_array($ext, $ext_pic)) $type = 5; elseif (in_array($ext, $ext_arch)) $type = 6; elseif (in_array($ext, $ext_video)) $type = 7; elseif (in_array($ext, $ext_audio)) $type = 8; else $type = 9; // Определяем ID субкатегории и категории $req2 = mysql_query("SELECT * FROM `forum` WHERE `id` = '" . $res['refid'] . "'"); $res2 = mysql_fetch_array($req2); $req3 = mysql_query("SELECT * FROM `forum` WHERE `id` = '" . $res2['refid'] . "'"); $res3 = mysql_fetch_array($req3); // Заносим данные в базу mysql_query("INSERT INTO `cms_forum_files` SET `cat` = '" . $res3['refid'] . "', `subcat` = '" . $res2['refid'] . "', `topic` = '" . $res['refid'] . "', `post` = '$id', `time` = '" . $res['time'] . "', `filename` = '" . mysql_real_escape_string($fname) . "', `filetype` = '$type' "); } else { echo functions::display_error($error, '' . $lng['repeat'] . ''); } } else { echo $lng_forum['error_upload_error'] . '
'; } } $pa = mysql_query("SELECT `id` FROM `forum` WHERE `type` = 'm' AND `refid` = '" . $res['refid'] . "'"); $pa2 = mysql_num_rows($pa); $page = ceil($pa2 / $kmess); echo '
' . $lng['continue'] . '
'; } else { /* ----------------------------------------------------------------- Форма выбора файла для выгрузки ----------------------------------------------------------------- */ echo '
' . $lng_forum['add_file'] . '
'; if ($set['fput'] > 1) echo '
Кол-во выгружаемых файлов:


* Форма для выбора кол-ва загружаемых файлов. max '.$set['fput'].'
'; echo '

'; for ($i = 0; $i < $fs; $i++) echo '

'; echo '

' . '
' . $lng_forum['max_size'] . ': ' . $set['flsz'] . 'kb.
'; } break; default: echo functions::display_error($lng['error_wrong_data']); } ?>