Написал код загрузки изображения на сервер - надежен ли он или можно как то загрузить вредоносный код. Может есть советы какие нибудь? PHP
if (isset($_FILES)) {
$upload_dir = './images/'; // Путь куда будут сохраняться изображения
$max_size = 5242880; // Макс.размер файла
$allow_format = array('jpg', 'jpeg', 'png'); // Разрешенные форматы файлов
$allow_type = array('image/jpg', 'image/jpeg', 'image/png'); // Разрешенные Content Type
// Данные файла
$file_tpm = $_FILES['file']['tmp_name'];
$file_name = $_FILES['file']['name'];
$file_size = $_FILES['file']['size'];
$file_type = $_FILES['file']['type'];
$file_name_cmps = explode(".", $file_name);
$file_extension = strtolower(end($file_name_cmps));
$file_info = getimagesize($file_tpm);
$file_mime = $file_info['mime'];
if ($file_info) {
// Проверяем Content Type
if (in_array($file_mime, $allow_type)) {
// Проверяем расширение файла
if (in_array($file_extension, $allow_format)) {
// Проверяем размер файла
if ($file_size <= $max_size) {
$new_filename = md5(trim($file_name) . md5(random_hash(20))) . '.' . $file_extension;
move_uploaded_file($file_tpm, $upload_dir . $new_filename);
echo 'Изображение успешно загружено';
echo '<br>';
echo '<img src="' . $upload_dir . $new_filename . '" alt="Avatar" />';
} else {
echo 'Изображение слишком большое';
}
} else {
echo "Формат изображения не допустим $file_extension";
}
} else {
echo "Неверный Type";
}
} else {
echo "Вы загрузили не изображение";
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Возникла необходимость рефакторинга довольно старого кода на php, написанного примерно в 2005м годуКод запускается на php 5
Подскажите пожалуйста, нужно реализовать извлечение текста из картинок(png, jpg)Как на сервисе https://img2txt