Îðëà
Îáëàñòè
Êîìïàíèé
Ïîëüçîâàòåëè
Ãàëåðåÿ
Ôèêñèðîâàííûå íîâîñòè
Îðëà
Îòçûâû î ôèðìàõ
Òàðèôû
Ïîëüçîâàòåëè
Îáëàñòè
Áàíêîìàòû
Òîðãîâûå òî÷êè
Äîñêà îáúÿâëåíèé
Êóðñû âàëþò
Ñêèäêè
îðãàíèçàöèè Îðëà
îðãàíèçàöèè îáëàñòè
òîâàðû
ñàéòû
ñàéòû Îðåë
Äàííûå
Ðàçäåëû
Ïîèñê
Ïîèñê çàïðîñû
Ñòàòèñòèêà
Ïîêàçû êàòàëîãà îðãàíèçàöèé
Ñòàòèñòèêà êëèåíòû
Ïîëüçîâàòåëè
Ñàéòû
Óïðàâëåíèå ñàéòîì
Àíêåòà
Àïòåêè
Àôèøà
Àôèøà íîâàÿ
Áàííåðû
Áèçíåñ >
Âèêòîðèíà
Ãîëîñîâàíèå
Ãîñòü íà ñàéòå
Èñòîðèè
Êàëåíäàðü ñîáûòèé
Êàòàëîãè >
Êîíêóðñ êðàñîòû
Êîíêóðñ àóäèî
Êîíñóëüòàöèè
Ìåíþ
Íîâîå íà ñàéòå
Íîâîñòè >
Îðãàíèçàöèè >
Ïðîãðàììà ÒÂ
Ïóáëèêàöèè
Ðàçäåëû ñàéòà
Ðàññûëêà
Ðåñòîðàíû
Ñåêðåò ôèðìû >
Ñåðâèñû >
Ññûëêè
Òåñòû
Ôàéëîâûé ìåíåäæåð
Ôîðóì
Ôîòîãàëåðåÿ
Îáðàòíàÿ ñâÿçü
Íåäâèæèìîñòü
Íîâûé ãîä
Òåêñòû
Ïîëüçîâàòåëè
Þðèäè÷åñêèé ðåéòèíã
Îòçûâû íà òîâàðû
Áàí ïîëüçîâàòåëåé
Æàëîáû
Íîâûå òåñòû
Êîðîíàâèðóñ
Ôàéëîâûé ìåíåäæåð
Èìÿ ôàéëà
upload_thumb.php
Ñîäåðæèìîå
<?php ini_set('display_errors', 0); // У�танавливаем правильную кодировку дл� вывода header('Content-Type: application/json; charset=utf-8'); $base_url="../"; set_time_limit(120); // Пытаем�� у�тановить альтернативную временную директорию // В�Ж�О: ini_set('upload_tmp_dir') не работает во врем� выполнени�, // но попробуем у�тановить переменные окружени� $customTmpDir = __DIR__ . '/../../user_foto/tmp'; if (!is_dir($customTmpDir)) { @mkdir($customTmpDir, 0777, true); } if (is_dir($customTmpDir) && is_writable($customTmpDir)) { // У�танавливаем переменные окружени� (может помочь некоторым функци�м) putenv('TMPDIR=' . $customTmpDir); putenv('TMP=' . $customTmpDir); putenv('TEMP=' . $customTmpDir); // Пытаем�� у�тановить через ini_set (не �работает дл� upload_tmp_dir, но попробуем) @ini_set('upload_tmp_dir', $customTmpDir); } require($base_url."../func.php"); require_once (__DIR__ . '/../../autoloader.php'); $conn = db_connect(); //коннектим�� к базе require_once("news_func.php"); use app\core\storage\ImageWatermark; ini_set('display_errors', 0); $img_index = null; $error = null; // Функци� дл� получени� тек�тового опи�ани� ошибки загрузки function getUploadErrorMessage($errorCode) { switch ($errorCode) { case UPLOAD_ERR_INI_SIZE: return 'Размер файла превышает значение upload_max_filesize в php.ini'; case UPLOAD_ERR_FORM_SIZE: return 'Размер файла превышает значение MAX_FILE_SIZE в форме'; case UPLOAD_ERR_PARTIAL: return 'Файл был загружен ча�тично'; case UPLOAD_ERR_NO_FILE: return 'Файл не был загружен'; case UPLOAD_ERR_NO_TMP_DIR: return 'От�ут�твует временна� директори�'; case UPLOAD_ERR_CANT_WRITE: $tmpDir = ini_get('upload_tmp_dir') ?: sys_get_temp_dir(); $tmpDirWritable = is_writable($tmpDir); // Провер�ем �вободное ме�то $diskFreeSpace = @disk_free_space($tmpDir); if ($diskFreeSpace === false) { // Пробуем получить �вободное ме�то дл� корн� ди�ка $diskFreeSpace = @disk_free_space('/'); } $diskFreeSpaceMB = $diskFreeSpace ? round($diskFreeSpace / 1024 / 1024, 2) . ' МБ' : 'не удало�ь определить'; // Пробуем �оздать те�товый файл дл� проверки реальной возможно�ти запи�и $testFile = $tmpDir . '/upload_test_' . uniqid() . '.tmp'; $canWrite = false; $writeError = ''; if (@file_put_contents($testFile, 'test') !== false) { $canWrite = true; @unlink($testFile); } else { $writeError = error_get_last(); $writeError = $writeError ? $writeError['message'] : 'неизве�тна� ошибка'; } $msg = '�е удало�ь запи�ать файл на ди�к'; $msg .= ' (временна� директори�: ' . $tmpDir; $msg .= ', до�тупна дл� запи�и: ' . ($tmpDirWritable ? 'да' : 'нет'); $msg .= ', можно �оздать файл: ' . ($canWrite ? 'да' : 'нет'); if (!$canWrite && $writeError) { $msg .= ' (' . $writeError . ')'; } $msg .= ', �вободно ме�та: ' . $diskFreeSpaceMB . ')'; return $msg; case UPLOAD_ERR_EXTENSION: return 'Загрузка файла была о�тановлена ра�ширением PHP'; default: return '�еизве�тна� ошибка загрузки (код: ' . $errorCode . ')'; } } // Обрабатываем �лучай, когда файл не может быть запи�ан в /tmp // Пытаем�� получить файл напр�мую из потока данных $tmpFile = null; $useCustomTmp = false; if (!isset($_FILES['thumb_image'])) { $error = 'Файл не был отправлен на �ервер'; } elseif ($_FILES['thumb_image']['error'] !== UPLOAD_ERR_OK) { $errorCode = $_FILES['thumb_image']['error']; // Е�ли ошибка запи�и в /tmp, пытаем�� обработать файл напр�мую из потока if ($errorCode == UPLOAD_ERR_CANT_WRITE) { // Пытаем�� получить файл из потока данных и �охранить в нашу директорию $customTmpDir = __DIR__ . '/../../user_foto/tmp'; if (is_dir($customTmpDir) && is_writable($customTmpDir)) { // Пар�им multipart/form-data вручную $input = file_get_contents('php://input'); if ($input && strlen($input) > 0) { // Ищем границы multipart $boundary = null; if (isset($_SERVER['CONTENT_TYPE'])) { preg_match('/boundary=(.*)$/i', $_SERVER['CONTENT_TYPE'], $matches); if (isset($matches[1])) { $boundary = '--' . $matches[1]; } } if ($boundary) { $parts = explode($boundary, $input); foreach ($parts as $part) { if (strpos($part, 'name="thumb_image"') !== false) { // �ашли нужную ча�ть $part = explode("\r\n\r\n", $part, 2); if (isset($part[1])) { $fileContent = rtrim($part[1], "\r\n--"); $tmpFile = $customTmpDir . '/upload_' . uniqid() . '.tmp'; if (@file_put_contents($tmpFile, $fileContent) !== false && filesize($tmpFile) > 0) { $useCustomTmp = true; $error = null; // Сбра�ываем ошибку, т.к. файл у�пешно �охранен break; } } } } } } } if (!$useCustomTmp) { $fileSize = isset($_FILES['thumb_image']['size']) ? round($_FILES['thumb_image']['size'] / 1024 / 1024, 2) . ' МБ' : 'неизве�тен'; $error = 'Ошибка загрузки файла: ' . getUploadErrorMessage($errorCode); $upload_dir_full = __DIR__ . '/../../user_foto/news'; $tmpDir = ini_get('upload_tmp_dir') ?: sys_get_temp_dir(); $uploadTmpDirSetting = ini_get('upload_tmp_dir'); $error .= " | TMP_DIR: " . $tmpDir; $error .= " | TARGET_DIR: " . $upload_dir_full; $error .= " | TARGET_WRITABLE: " . (is_writable($upload_dir_full) ? 'YES' : 'NO'); $error .= " | UPLOAD_TMP_DIR_SETTING: " . ($uploadTmpDirSetting ? $uploadTmpDirSetting : '�Е УСТ��ОВЛЕ�О'); } } else { $fileSize = isset($_FILES['thumb_image']['size']) ? round($_FILES['thumb_image']['size'] / 1024 / 1024, 2) . ' МБ' : 'неизве�тен'; $error = 'Ошибка загрузки файла: ' . getUploadErrorMessage($errorCode); if ($errorCode == UPLOAD_ERR_INI_SIZE || $errorCode == UPLOAD_ERR_FORM_SIZE) { $error .= ' (размер файла: ' . $fileSize . ', лимит: ' . ini_get('upload_max_filesize') . ')'; } } } elseif ($_FILES['thumb_image']['tmp_name'] <> "") { // И�пользуем файл из нашей директории, е�ли мы его �оздали, иначе и�пользуем �тандартный if (!$tmpFile) { $tmpFile = $_FILES['thumb_image']['tmp_name']; } // Провер�ем файл (либо �тандартный, либо наш) if ($useCustomTmp || is_uploaded_file($_FILES['thumb_image']['tmp_name']) || ($tmpFile && file_exists($tmpFile))) { // Провер�ем �уще�твование директории дл� загрузки $upload_dir = $base_url . "../user_foto/news"; $upload_dir_full = __DIR__ . '/../../user_foto/news'; if (!is_dir($upload_dir_full)) { $error = 'Директори� дл� загрузки не �уще�твует: ' . $upload_dir_full; } elseif (!is_writable($upload_dir_full)) { $error = '�ет прав на запи�ь в директорию: ' . $upload_dir_full; } elseif (!$tmpFile || !file_exists($tmpFile) || !is_readable($tmpFile) || filesize($tmpFile) == 0) { $error = 'Временный файл недо�тупен или поврежден. Проверьте �вободное ме�то на ди�ке и права до�тупа к /tmp'; } else { $image = upload_foto_tovar($tmpFile,430,900,1,1,$upload_dir); // Удал�ем временный файл из нашей директории, е�ли мы его �оздали if ($useCustomTmp && file_exists($tmpFile)) { @unlink($tmpFile); } if ($image) { $img_index = "user_foto/news/" . $image; // теперь �оздадим ватермарк, е�ли требует�� $viewWatermark = 0; if (isset(App::$request) && App::$request) { $viewWatermark = App::$request->post('view_watermark', 0); } elseif (isset($_POST['view_watermark'])) { $viewWatermark = (int)$_POST['view_watermark']; } if ($viewWatermark == 1) { $watermark = ImageWatermark::getInstance(); try { $watermark->create(__DIR__ . '/../../' . $img_index); $watermark->create(__DIR__ . '/../../' . str_replace('.', '_sm.', $img_index)); } catch (Exception $e) { // nothing } } } else { $error = '�е удало�ь обработать изображение. Проверьте формат файла (должен быть GIF, JPG или PNG)'; } } } else { $error = 'Файл не был загружен или не прошел проверку безопа�но�ти'; } } else { $error = 'Файл не выбран'; } // Функци� дл� конвертации �троки в UTF-8 (е�ли нужно) function toUtf8($str) { if (function_exists('mb_convert_encoding')) { // Провер�ем, не UTF-8 ли уже if (mb_check_encoding($str, 'UTF-8')) { return $str; } return mb_convert_encoding($str, 'UTF-8', 'Windows-1251'); } return $str; } if ($error || !$img_index) { // Дополнительна� диагно�тика дл� отладки $debugInfo = [ 'upload_tmp_dir' => ini_get('upload_tmp_dir') ?: '�Е УСТ��ОВЛЕ�О', 'sys_temp_dir' => sys_get_temp_dir(), 'custom_tmp_dir' => __DIR__ . '/../../user_foto/tmp', 'custom_tmp_exists' => is_dir(__DIR__ . '/../../user_foto/tmp'), 'custom_tmp_writable' => is_writable(__DIR__ . '/../../user_foto/tmp'), 'target_dir' => __DIR__ . '/../../user_foto/news', 'target_dir_writable' => is_writable(__DIR__ . '/../../user_foto/news'), 'upload_max_filesize' => ini_get('upload_max_filesize'), 'post_max_size' => ini_get('post_max_size'), ]; // Конвертируем ошибку в UTF-8 дл� правильного отображени� $errorUtf8 = $error ? toUtf8($error) : '�еизве�тна� ошибка'; echo json_encode([ 'success' => false, 'error' => $errorUtf8, 'debug' => $debugInfo ], JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT); } else { echo json_encode([ 'success' => true, 'data' => $img_index, 'data_sm' => str_replace('.', '_sm.', $img_index) ], JSON_UNESCAPED_UNICODE); }
/admin/news///////
Èìÿ
Äàòà
Ðàçìåð
fb
2013-04-27
twitteroauth_old
2013-04-27
action.php
2015-05-22
2 êá.
delete_slider.php
2017-02-22
302 áàéò
edit_slider.php
2017-02-22
6 êá.
fix.php
2021-03-29
8 êá.
get_tags.php
2017-02-21
507 áàéò
news.rss
2006-01-02
24 êá.
news_func.php
2026-10-02
16 êá.
news_modif.php.back
2025-01-09
45 êá.
news_modif.php.back~
2026-07-24
45 êá.
news_modif.php.bak.charset_20261002
2026-01-12
46 êá.
news_new.php
2019-04-25
202 áàéò
news_sql_new.php
2021-03-29
12 êá.
od2.php
2013-08-13
522 áàéò
razdel.php
2017-06-21
6 êá.
sitemap.xml
2019-04-25
0 áàéò
swfobject.js
2008-06-02
7 êá.
test_fb.php
2016-01-15
3 êá.
testvk.php
2014-07-29
6 êá.
upload_thumb.php
2026-01-12
13 êá.
{response}-
2016-11-07
0 áàéò
{upload_url}~
2026-07-24
0 áàéò
/admin/news///////
Çàãðóçèòü ôàéëû
Ôàéë 1
Ôàéë 2
Ôàéë 3