在我们的系统中,不免要上传图片,视频等文件,在上传中,需要做的一些判断,文件大小等方面。

注意:

在php.ini 中的post_max_size,upload_max_filesize默认为2M,在上传视频的时候,需要修改下,可以自行设置。

另外如果启用了内存限制,那么该值应当小于memory_limit选项的值。

在上传视频的时候,可以会需要花费些时间,当超过一定的时间,会报脚本执行超过30秒的错误,这是因为在php.ini配置文件中max_execution_time配置选项在作怪,其表示每个脚本最大允许执行时间(秒),0 表示没有限制。你可以适当调整max_execution_time的值,不推荐设定为0。

前台页面:html

 <form enctype="multipart/form-data" action='text.php' method="post">
<input type="file" name="upfile"> <input type="submit" value='上传文件'>
</form>

后台页面:php 处理

 <script src="./js/jquery2.0.3.min.js"></script>
<?php
var_dump($_FILES);
//$_FILES['upfile']['tmp_name']
//var_dump($_POST);
/*$size = getimagesize($_FILES['upfile']['tmp_name']);
$width = $size[0];
$height = $size[1];*/
//if($width>165 || $height>216){
// echo "图片长或宽超出限制";
// exit;
//}
/*if($_FILES['upfile']['size']>20*1024*1024){
echo "图片过大";
}*/
include_once 'common/util.php';
getImgW_H($_FILES['upfile'],10,2016,40,"apk");

3.common文件下 自己写的函数:util.php

/**
* @param $file_tmpname
* 限制上传文件 的 宽高,大小,后缀名
* $file = $_files['upfile'],$w 最大宽度,$h 最大高度,$size 最大文件 大小(单位为kb),$type 后缀名
*/
function getImgW_H($file,$w,$h,$size,$type){ $imgFileName = explode(".",$file['name']);
$imgExt = $imgFileName[count($imgFileName)-1];
if(!in_array($imgExt,explode(',',$type))){
?>
<script type="text/javascript">
alert("请输入后缀名为<?php echo $type; ?>的文件");
window.history.go(-1);
</script>
<?php
exit;
}
if(!empty($w)&&!empty($h)){
$s = getimagesize($file['tmp_name']);
$width = $s[0];
$height = $s[1];
if($width>$w || $height>$h){
?>
<script type="text/javascript">
alert("图片长或宽超出限制,宽<?php echo $w; ?>,高<?php echo $h; ?>");
window.history.go(-1);
</script>
<?php
exit;
}
} if($file['size']>$size*1024){
?>
<script type="text/javascript">
alert("图片过大,不大于<?php echo $size; ?>kb");
window.history.go(-1);
</script>
<?php
exit;
} }

关于PHP HTML <input type="file" name="img"/>上传图片,图片大小,宽高,后缀名。的更多相关文章

  1. input[type=file]样式更改以及图片上传预览

    以前知道input[type=file]可以上传文件,但是没用过,今天初次用,总感觉默认样式怪怪的,想修改一下,于是折腾了半天,总算是小有收获. 以上是默认样式,这里我想小小的修改下: HTML代码如 ...

  2. html中,文件上传时使用的<input type="file">的样式自定义

    Web页面中,在需要上传文件时基本都会用到<input type="file">元素,它的默认样式: chrome下: IE下: 不管是上面哪种,样式都比较简单,和很多 ...

  3. js 实现 input type="file" 文件上传示例代码

    在开发中,文件上传必不可少但是它长得又丑.浏览的字样不能换,一般会让其隐藏点其他的标签(图片等)来时实现选择文件上传功能 在开发中,文件上传必不可少,<input type="file ...

  4. [置顶] js 实现 <input type="file" /> 文件上传

    在开发中,文件上传必不可少,<input type="file" /> 是常用的上传标签,但是它长得又丑.浏览的字样不能换,我们一般会用让,<input type ...

  5. input type='file'上传控件假样式

    采用bootstrap框架样式 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> &l ...

  6. <input type="file">上传文件并添加路径到数据库

    注:这里是用的mvc所以没法用控件 html代码 <form method="post" enctype="multipart/form-data"> ...

  7. Android:让WebView支持<input type=”file”…>元素

    最近在做一个活动页面:用户上传一张图片进行缩放.旋转后点击下一步填写内容后生成图片! 做好后经过各种测试是没有问题的,基本没有什么明显BUG,流程都能走通,但是嵌入到APP后,问题就来了! 在IOS上 ...

  8. HTML <input type="file">上传文件——结合asp.net的一个文件上传示例

    HTML的代码:(关键是要在form里设置enctype="multipart/form-data",这样才能在提交表单时,将文件以二进制流的形式传输到服务器) 一. <fo ...

  9. 上传文件 隐藏input type="file",用text显示

    <div> <span>上传文件:</span> <input type="file" id="upload_file" ...

随机推荐

  1. POSIX字符类

    POSIX字符类需要用引号,或双括号[[]]括起来: [:alnum:]:匹配字面和数字字符.等同于A~Z,a~z,0~9 [:alpha:]:匹配字母字符.等同于A~Z,a~z [:blank:]: ...

  2. strong和copy的区别

    问题描述 在定义一个类的property时候,为property选择strong还是copy特别注意和研究明白的,如果property是NSString或者NSArray及其子类的时候,最好选择使用c ...

  3. Python查看函数代码内容

    方法1:使用help(random) >>> import random >>> help(random) Help on module random: NAME ...

  4. document.createElement()的用法<> 加强我对陌生代码的理解!

    document.createElement()的用法 分析代码时,发现自己的盲点——document.createElement(),冲浪一番,总结了点经验. document.createElem ...

  5. HDU 1060 Leftmost Digit

    基本思路:(参考大神和加自己的思考) 考虑到此题需要输入这么大的数a,并且还的求aa,求出来会更大,更多位.当时考虑用大数方法求(数组实现),结果实现不行.看网上大神采用对数法,巧妙避开处理这么大的数 ...

  6. 集合(Collection)使用笔记

    Collections.unmodifiableCollection这个可以得到一个集合的镜像,它的返回结果不可直接被改变,否则会提示 java.lang.UnsupportedOperationEx ...

  7. c#记事本

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  8. poj2395 Out of Hay

    题意就是给你一张无向连通图,试问对于图上所有点对(u,v)从u到v的所有路径中边权最大值的最小值的最大值. 定义f(u,v)表示从u到v所有路径中边权最大值的最小值,对所有点对取其最大. 实际上就是求 ...

  9. 周赛-Clique in the Divisibility Graph 分类: 比赛 2015-08-02 09:02 23人阅读 评论(3) 收藏

    Clique in the Divisibility Graph time limit per test1 second memory limit per test256 megabytes inpu ...

  10. Unity脚本在层级面板中的执行顺序测试4-附加整理

    测试4为一些附加内容,后续的各种tips都加在此. 前几篇测试的链接: Unity脚本在层级面板中的执行顺序测试1 http://www.cnblogs.com/hont/p/4298110.html ...