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

注意:

在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. linux-exp 工具+小技巧

    # 工具篇 # pwntools ,gdb-peda ROPgadget-tool . EDB ## pwntools获取.安装和文档帮助 ## - pwntools: github可以搜索到 htt ...

  2. AVAudioplayer时error解决 创建失败 ERror creating player: Error Domain=NSOSStatusErrorDomain Code=2003334207 "(null)"

    AVAudioplayer 有两个初始化方法: 1.[[AVAudioPlayer alloc] initWithData:musicData error&e]; 2.[[AVAudioPla ...

  3. BZOJ 1588:营业额统计(Splay)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1588 题意:中文题意. 思路:每一个点每一个点插入Splay,然后插入新的一个点之后,查这个节点的前 ...

  4. C#:屏幕显示区域问题

    更改电脑屏幕显示的文字大小后,平面显示区域问题. /// <summary> /// 屏幕显示尺寸 /// </summary> public static Size Revi ...

  5. Linux用户组与用户组进阶命令

    1.用户锁定 : passwd -l user1 2.解除用户锁定:passwd -u user1 3.用户无密码登记:passwd -d user1 4.添加到附属用户组:gpasswd -a us ...

  6. tar 报错gzip: stdin: not in gzip format

    今天在linux下 用tar -zxvf xxx.tar.bz2 然后就报这个错. gzip: stdin: not in gzip formattar: Child returned status ...

  7. 【转】利用xcode生成的app生成可以在iphone和itouch上运行的ipa安装包

    转载地址:http://blog.csdn.net/yohunl/article/details/5971252 在编译好的真机版目录下的.app文件,至于生成真机可以运行的app的方法,有两种方式, ...

  8. javascript事件处理解析

    一.什么是事件!(w3c解释) 事件是可以被 JavaScript 侦测到的行为. JavaScript 使我们有能力创建动态页面.事件是可以被 JavaScript 侦测到的行为. 网页中的每个元素 ...

  9. 20150612_Andriod contextual action mode 菜单

    参考地址:http://www.xuebuyuan.com/1114028.html              http://www.cnblogs.com/mengdd/p/3564782.html ...

  10. anroid打包

    http://blog.csdn.net/qq435757399/article/details/46634363 转载 Gradle打包APP签名 默认情况下,debug被配置成使用一个debug ...