Пишу загрузчик изображений вот код PHP: <?php $uploaddir = 'Z:/home/mad.telenet.ru/www/foto/'; $uploadfile = $uploaddir . basename($_FILES['userfile']['name']); print "<pre>"; if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { } else { print "ошибка загрузки\n"; } print "</pre>"; if (isset($_FILES['userfile']['name'])) {$fotoname = $_FILES['userfile']['name'];} else {Print "Не могу определить имя загружаемого изображения ";exit;} if (isset($_FILES['userfile']['size'])) {$fotosize=$_FILES['userfile']['size'];} else {Print " Не могу определить размер загружаемого изображения.";exit;} $valid_images=array("jpg");// проверяем расширение файла $ext = strtolower(substr($fotoname, 1 + strrpos($fotoname, "."))); if (!in_array($ext, $valid_images)) { Print " ФАЙЛ НЕ загружен. Возможные причины:<br/> - разрешена загрузка только файлов с расширением jpg.<br/> - Вы пытаетесь загрузить не графический файл;<br/> - неверно введён адрес или выбран файл "; exit;} ?> по идее не должен ничо пускать ни чо кроме .jpg ну или во всяком случае должен но все равно загружает всё как сделать чтоб всетаки загружал тока джпег и еще вопрос как переименовывать файл? атто я чото недогнал
1) а почему проверка имени стоит после аполдинга и копирования файла? 2) я бы проверил ещё тип файла на всякий случай, является ли загружаемое нечто дейтсвительно jpg'ом
PHP: <?php if (!in_array($ext, $valid_images)) { Print " ФАЙЛ НЕ загружен. Возможные причины:<br/> - разрешена загрузка только файлов с расширением jpg.<br/> - Вы пытаетесь загрузить не графический файл;<br/> - неверно введён адрес или выбран файл "; exit(); } else { if (@move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { echo 'File uploading success'; } else { exit("ошибка загрузки<br />"); } } ?> Можно хотя бы сделать так......
PHP: if (isset($_FILES['userfile']['name'])) {$fotoname = $_FILES['userfile']['name'];} Евгений Попов???
Вот кстати, не тестил правдо PHP: <? function is_img($img,$imgs) { $exp=preg_replace("#(.+)\.#i","",$img); if (in_array(strtolower($exp),$imgs)) return true; return false; } function upload($tmp,$name,$dir) { if (isset($tmp) && !empty($tmp)) { if (is_img($name,array('jpg','jpeg'))){ if (move_uploaded_file($tmp,$dir.'/'.$name)) return true; } } return false; } ?>