首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何限制上传文件大小php

问如何限制上传文件大小php
EN

Stack Overflow用户
提问于 2013-11-13 18:04:03
回答 4查看 258关注 0票数 0

我有下面的php代码,它允许用户上传图像。我如何修改我的代码,以便对上传的图像大小有限制(假设最大为20k)。这是我的代码。

代码语言:javascript
复制
<?php
/// another code ///
if($_POST)
{   

    if(!isset($_FILES['mFile']))
    {
        //required variables are empty
        die("Please add a image");
    }

    if($_FILES['mFile']['error'])
    {
        //File upload error encountered
        die(upload_errors($_FILES['mFile']['error']));
    }

    $FileName           = strtolower($_FILES['mFile']['name']);
    $auto                           = mysql_real_escape_string($_POST['auto']);
    $FileType           = $_FILES['mFile']['type']; //file type
    $FileSize           = $_FILES['mFile']["size"]; //file size


            if(move_uploaded_file($_FILES['mFile']["tmp_name"], $UploadDirectory . $NewFileName ))
         {


        mysql_query("INSERT INTO posts (title, post, img_name) VALUES ('$FileTitle', '$postURL', '$NewFileName')");

        die('Thank you for your submission.');

   }else{
        die('There seems to be a problem. please try again.');
   }
}
/// another code ///
?>
EN

回答 4

Stack Overflow用户

发布于 2013-11-13 18:05:17

像这样设置它

代码语言:javascript
复制
<?php
ini_set('post_max_size', '20K');
ini_set('upload_max_filesize', '20K'); 
票数 1
EN

Stack Overflow用户

发布于 2013-11-13 18:06:37

有几种方法可以实现这一点:

以编程方式:

代码语言:javascript
复制
ini_set('post_max_size', '20K');
ini_set('upload_max_filesize', '20K');

通过php.ini:

代码语言:javascript
复制
post_max_size = 20K
upload_max_filesize = 20K

通过.htaccess:

代码语言:javascript
复制
php_value upload_max_filesize 20K
php_value post_max_size 20K
票数 1
EN

Stack Overflow用户

发布于 2013-11-13 18:08:18

这是上传的图片大小的个人使用限制样本,更改表和变量

代码语言:javascript
复制
$picture = $_FILES['pic']['name'];
$picsize = $_FILES['pic']['size'];
$pictype = $_FILES['pic']['type'];

if(!empty($picture)){
        if(($pictype == 'image/gif') || ($pictype == 'image/jpeg') || ($pictype == 'image/pjpeg') || ($pictype == 'image/png') && ($picsize > 0) && ($picsize <= 30000 )){
            if($_FILES['pic']['error'] == 0)
                {
                $target = UPLOADPATH . $user_name;
                echo $target;
                if(move_uploaded_file($_FILES['pic']['tmp_name'], $target))
                {
                    $query2 = "UPDATE users SET profile_image = '{$user_name}' WHERE user_name = '{$user_name}'";
                    $result2 = mysql_query($query2);
                }
                }
            else{
                echo 'upload failed';
            }


        }
        elseif(($pictype != 'image/gif') && ($pictype != 'image/jpeg') && ($pictype != 'image/pjpeg') && ($pictype != 'image/png')){
            echo 'incorrect file type';
        }
        elseif(($picsize <= 0) || ($picsize > 30000 ))
        {
            echo 'incorrect file size';
        }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19950790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档