проверить размер файла загрузки изображений в Stack Overflow

проблема при загрузке изображения самого большого 3M или 4M возвращают успешную загрузку, но он не действительно загружает в папку, я хочу правильно показать сообщение об ошибке.
я думаю проблема в проверке размера файла

        $dir_name=dirname(__FILE__)."/../admin/upload/";
$path=@$_FILES['file_upload']['tmp_name'];
$name=@$_FILES['file_upload']['name'];
$fsize=$_FILES['file_upload']['size'];
$multiext= array("gif","jpeg","jpg","png");
$erros=array();

$extention = strtolower(end(explode(".", $name)));
$extcheck = in_array($extention,$multiext);
$newname=rand(1,9999999999).'.'.$extention;

if( !$extcheck )
{
$erros[] = "<div class='msgerrorup'>Invalid file</div>";
}

if( ($fsize > 100000) )
{
$erros[] =  "<div class='msgerrorup'>Image size must be 100k</div>";

}

if(!$newname )
{

$erros[]  = "<div class='seccessup'>Invalid parametrs</div>";

}

if ( empty($erros) )
{
move_uploaded_file($path,$dir_name.$newname);
echo "<div class='seccessup'>Success upload</div>";
}
else
{
foreach ($erros as $erro)
{
echo $erro."<br />";
}
}

1

Решение

Попробуй это

    $path=@$_FILES['file_upload']['tmp_name'];
$name=@$_FILES['file_upload']['name'];
$fsize=$_FILES['file_upload']['size'];
$ftype=$_FILES['file_upload']['type'];
$multiext= array("image/gif","image/jpeg","image/jpg","image/png");
$erros=array();
if( !in_array($ftype, $multiext) )
{
$erros[] = "<div class='msgerrorup'>Invalid file</div>";
}

а также

  if ( count($erros) == 0 )
{
move_uploaded_file($path,$dir_name.$newname);
echo "<div class='seccessup'>Success upload</div>";
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]