Maton, добавь в код строчку
file_put_contents('log.txt', $ext . ' - ' . $tmp_name . ' - ' . $new_name . PHP_EOL, FILE_APPEND | LOCK_EX);
foreach ($_FILES['uplfile']['error'] as $key => $error) {
if ($_FILES['uplfile']['size'][$key] >= 1024 * $set['flsz']) {
echo '<div>Файл слишком большой</div>';
} elseif ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES['uplfile']['tmp_name'][$key];
$name = $_FILES['uplfile']['name'][$key];
$ext = end(explode('.', $name));
$new_name = $uniqid . '_' . $key . '.' . $ext;
move_uploaded_file($tmp_name, $rootpath . 'files/admin/' . $uniqid . '/' . $new_name);
} elseif ($error==4) {
echo '<div>Пустое поле</div>';
} else {
echo '<div>Произошла ошибка</div>';
}
file_put_contents('log.txt', $ext . ' - ' . $tmp_name . ' - ' . $new_name . PHP_EOL, FILE_APPEND | LOCK_EX);
}
загрузи опять 5 файлов и log.txt выложи
лог:
y - /tmp/phpHlcU3N - b7f29a00_4.y
Maton, сейчас придумаю, но это уже не норма
Maton, думаю это к хостеру, дай ему этот кусок кода и лог
запустятся, архивы не распакуются. Текстовые файлы (почти точно) не повредятся. Дело в том, что Русский Апач (ваш веб-сервер) перекодирует все подряд. Например, символ с кодом 0х00 он заменяет на пробел (символ с кодом 0х20). Чтобы выключить эту ненужную перекодировку, допишите в файл httpd.conf из каталога Апача (/usr/local/apache) следующие строки. Если у вас нет доступа к этому файлу и админ сервера не может сделать это за вас, ткните его в эти строки.
<Location /> CharsetRecodeMultipartForms Off </Location>
Строку CharsetRecodeMultipartForms Off можно добавлять в разные места (один раз). Если вы совсем начинающий пользователь и не решите сами, куда писать эту строку, будьте аккуратнее при решении задачи методом тыка.
Maton, хотя есть вариант лепить расширение по мим типу файла, сейчас нарисую
Maton, пробуй, и лог сюда
Koenig, - /tmp/phpBYd2z7 - 0f94090a_4.
Maton, в прочих модулях работает аплоад?
все модули (включая почту крайта) вложения приходят нормально. как положено. не работают только твои 2 мода: админу с вложением и на мыло с вложением.(((
Maton, просмотри массив $_POST на наличие нужного,
echo '<pre>'; print_r($_POST); добавить
echo '<div>Ваше сообщение будет рассмотрено в ближайшие сроки</div>';
unset($_SESSION['code']);
}
}
echo '<pre>'; print_r($_POST);
}
}
} else {
echo print_form();
}