php上传文件类型大全,php上传文件大小

本文目录一览:

php 文件上传怎样设置文件的类型为所有类型(jpg,doc,rar,等所有文件类型)

一般PHP文件上传时应自行设置检查文件类型的,如果你不检查就能上传所有的文件类型了。

怎么用php实现文件的上传,要求文件类型为jpg,大小不超过2m,上传的文件存放在u?

$_FILES官方文档

你可以看看官方的$_FILES文档,里面有对$_FILES的内容的解释。

想通过PHP来处理文件信息就得通过$_FILES的内容来处理,比如文件类型可以用type来判断,要求文件类型为jpg,那就判断if ($_FILES[‘file1’][‘type’] === ‘image/jpeg’),这里的file1并不是绝对的,视情况而定。

当然如果你觉得判断类型太麻烦,你也可以直接从name中判断后缀名,自己将文件名分割一下就好了。大小可以用size,默认单位是字节,不超过2M就要除以1024*1024了,可以将字节转换到兆字节。

要将上传的文件放在U目录下,就用move_uploaded_file函数来解决,move_uploaded_file官方文档

在PHP中怎么实现文件的分类上传?

先判断上传文件的类型,不同的类型写在不同的文件夹

?

if(isset($_POST[‘send’]) $_POST[‘send’]==’true’){

print_r($_FILES);

$type = $_FILES[‘file’][‘type’];

switch($type){

case ‘image/jpeg’:

$dfolder = ‘jpg’;

break;

case ‘application/pdf’;

$dfolder = ‘pdf’;

break;

case ‘text/plain’;

$dfolder = ‘txt’;

break;

}

mkdir($dfolder,0777);

if(move_uploaded_file($_FILES[‘file’][‘tmp_name’],$dfolder.’/’.$_FILES[‘file’][‘name’])){

echo ‘upload success’;

}

}else{

?

!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “”

html

head

title New Document /title

meta name=”Generator” content=”EditPlus”

meta name=”Author” content=””

meta name=”Keywords” content=””

meta name=”Description” content=””

/head

body

form name=”form1″ method=”post” enctype=”multipart/form-data”

input type=”file” name=”file”

input type=”hidden” name=”send” value=”true”

input type=”submit” value=”submit”

/form

/body

/html

? } ?

php上传文件代码,能用的代码

?php

$uptypes=array(‘image/jpg’, //上传文件类型列表

‘image/jpeg’,

‘image/png’,

‘image/pjpeg’,

‘image/gif’,

‘image/bmp’,

‘image/x-png’);

$max_file_size=5000000; //上传文件大小限制, 单位BYTE

$destination_folder=”upload/”; //上传文件路径

$watermark=1; //是否附加水印(1为加水印,其他为不加水印);

$watertype=1; //水印类型(1为文字,2为图片)

$waterposition=1; //水印位置(1为左下角,2为右下角,3为左上角,4为右上角,5为居中);

$waterstring=”newphp.site.cz”; //水印字符串

$waterimg=”xplore.gif”; //水印图片

$imgpreview=1; //是否生成预览图(1为生成,其他为不生成);

$imgpreviewsize=1/2; //缩略图比例

?

html

head

titleM4U BLOG – fywyj.cn/title

meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″

style type=”text/css”body,td{font-family:tahoma,verdana,arial;font-size:11px;line-height:15px;background-color:white;color:#666666;margin-left:20px;}

strong{font-size:12px;}

aink{color:#0066CC;}

a:hover{color:#FF6600;}

aisited{color:#003366;}

a:active{color:#9DCC00;}

table.itable{}

td.irows{height:20px;background:url(“index.php?i=dots” repeat-x bottom}/style

/head

body

centerform enctype=”multipart/form-data” method=”post” name=”upform”

上传文件: brbrbr

input name=”upfile” type=”file” style=”width:200;border:1 solid #9a9999; font-size:9pt; background-color:#ffffff” size=”17″

input type=”submit” value=”上传” style=”width:30;border:1 solid #9a9999; font-size:9pt; background-color:#ffffff” size=”17″brbrbr

允许上传的文件类型为:jpg|jpeg|png|pjpeg|gif|bmp|x-png|swf brbr

a href=”index.php”返回/a

/form

?php

if ($_SERVER[‘REQUEST_METHOD’] == ‘POST’)

{

if (!is_uploaded_file($_FILES[“upfile”][tmp_name]))

//是否存在文件

{

echo “font color=’red’文件不存在!/font”;

exit;

}

$file = $_FILES[“upfile”];

if($max_file_size $file[“size”])

//检查文件大小

{

echo “font color=’red’文件太大!/font”;

exit;

}

if(!in_array($file[“type”], $uptypes))

//检查文件类型

{

echo “font color=’red’只能上传图像文件或Flash!/font”;

exit;

}

if(!file_exists($destination_folder))

mkdir($destination_folder);

$filename=$file[“tmp_name”];

$image_size = getimagesize($filename);

$pinfo=pathinfo($file[“name”]);

$ftype=$pinfo[extension];

$destination = $destination_folder.time().”.”.$ftype;

if (file_exists($destination) $overwrite != true)

{

echo “font color=’red’同名文件已经存在了!/a”;

exit;

}

if(!move_uploaded_file ($filename, $destination))

{

echo “font color=’red’移动文件出错!/a”;

exit;

}

$pinfo=pathinfo($destination);

$fname=$pinfo[basename];

echo ” font color=red已经成功上传/fontbr文件名: font color=blue”.$destination_folder.$fname.”/fontbr”;

echo ” 宽度:”.$image_size[0];

echo ” 长度:”.$image_size[1];

if($watermark==1)

{

$iinfo=getimagesize($destination,$iinfo);

$nimage=imagecreatetruecolor($image_size[0],$image_size[1]);

$white=imagecolorallocate($nimage,255,255,255);

$black=imagecolorallocate($nimage,0,0,0);

$red=imagecolorallocate($nimage,255,0,0);

imagefill($nimage,0,0,$white);

switch ($iinfo[2])

{

case 1:

$simage =imagecreatefromgif($destination);

break;

case 2:

$simage =imagecreatefromjpeg($destination);

break;

case 3:

$simage =imagecreatefrompng($destination);

break;

case 6:

$simage =imagecreatefromwbmp($destination);

break;

default:

die(“font color=’red’不能上传此类型文件!/a”);

exit;

}

imagecopy($nimage,$simage,0,0,0,0,$image_size[0],$image_size[1]);

imagefilledrectangle($nimage,1,$image_size[1]-15,80,$image_size[1],$white);

switch($watertype)

{

case 1: //加水印字符串

imagestring($nimage,2,3,$image_size[1]-15,$waterstring,$black);

break;

case 2: //加水印图片

$simage1 =imagecreatefromgif(“xplore.gif”);

imagecopy($nimage,$simage1,0,0,0,0,85,15);

imagedestroy($simage1);

break;

}

switch ($iinfo[2])

{

case 1:

//imagegif($nimage, $destination);

imagejpeg($nimage, $destination);

break;

case 2:

imagejpeg($nimage, $destination);

break;

case 3:

imagepng($nimage, $destination);

break;

case 6:

imagewbmp($nimage, $destination);

//imagejpeg($nimage, $destination);

break;

}

//覆盖原上传文件

imagedestroy($nimage);

imagedestroy($simage);

}

if($imgpreview==1)

{

echo “br图片预览:br”;

echo “a href=\””.$destination.”\” target=’_blank’img src=\””.$destination.”\” width=”.($image_size[0]*$imgpreviewsize).” height=”.($image_size[1]*$imgpreviewsize);

echo ” alt=\”图片预览:\r文件名:”.$destination.”\r上传时间:\” border=’0’/a”;

}

}

?

/center

/body

/html

绝对好用!!!!给分吧

php 上传文件

刚学php时写的一个类,可以给你参考下,你所说的功能基本上也都有。

这个用作学习还是不错的。

?php

class fileup{

private $savefilepath;    //保存路径

private $filetype=array(‘gif’,’jpg’,’jpeg’,’png’); //文件类型

private $maxsize=1000000;   //上传最大的尺寸 默认值设置为1M

private $savename=true;   //是否默认随机名称

private $upfileform; //上传文件表单的name值

//以下是不可以修改的成员属性

private $tmpname; //上传的临时文件名

private $upfilename; //上传文件的名称

private $uperror;

private $newname; //新的文件名

//private $upfiletype; //上传文件的类型

private $upfilesize; //上传文件的大小。

private $filehz;  //文件名的扩展名。

//构造方法

function __construct($upfileform,$savefilepath=’./upload/’){

$this-upfileform=$upfileform;

$this-savefilepath=rtrim($savefilepath,’/’);

$this-tmpname=$_FILES[$upfileform][‘tmp_name’];

$this-upfilename=$_FILES[$upfileform][‘name’];

$this-upfilesize=$_FILES[$upfileform][‘size’];

$this-uperror=$_FILES[$upfileform][‘error’];

$this-getnewname();

}

//设置文件上传的参数,不设置为默认值。

function setfilepar($par){

$pars=array(‘filetype’,’maxsize’,’savename’);

foreach($par as $key=$value){

if(in_array($key,$pars)){

$this-$key=$value;

}else{

continue;

}

}

}

//检查上传

private function checkfileup(){

//判断文件夹是否正确或文件夹是否有可写入的权限。

if(!is_dir($this-savefilepath)||!is_writable($this-savefilepath)){

$this-uperror=8;

return false;

}

//判断文件名是否存在

if(is_file($this-newname)){

$this-uperror=9;

return false;

}

//判断上传文件的类型是否正确。

if(!in_array(strtolower($this-filehz),$this-filetype)){

$this-uperror=-1;

return false;

}

return true;

}

//获取新的文件名字

private function getnewname(){

$tmp=explode(‘.’,$this-upfilename);

$this-filehz=$tmp[count($tmp)-1];

if(is_bool($this-savename)){

if($this-savename){

$this-newname=$this-savefilepath.’/’.date(‘YmdHis’).rand(10000,99999).’.’.$this-filehz;

}else{

$this-newname=$this-savefilepath.’/’.$this-upfilename;

}

}else{

$this-newname=$this-savefilepath.’/’.$this-savename.’.’.$this-filehz;

}

}

//获取错误信息

private function getuperror(){

switch($this-uperror){

case 1: echo ‘上传文件超过了系统指定的大小’; break;

case 2: echo ‘上传文件超过了表单中指定的大小’; break;

case 3: echo ‘文件只有部分上传’; break;

case 4: echo ‘没有文件上传’; break;

case 6: echo ‘找不到上传的文件,系统错误’; break;

case 7: echo ‘文件写入失败’; break;

case 8: echo ‘文件路径不存在,或不可写’; break;

case 9: echo ‘文件名已经存在,请不要重复上传’; break;

case -1: echo ‘不是指定上传的文件’; break;

case -2: echo ‘请勿使用非法途径上传’; break;

case -3: echo ‘文件上传失败’; break;

default: ‘未知错误’; break;

}

}

function fileupload(){

if(!$this-checkfileup()||$this-uperror!=0){

$this-getuperror();

return false;

}else{

if(!is_uploaded_file($_FILES[$this-upfileform][‘tmp_name’])){

$this-uperror=-2;

$this-getuperror();

return false;

}else{

if(move_uploaded_file($_FILES[$this-upfileform][‘tmp_name’],$this-newname)){

return true;

}else{

$this-uperror=-3;

return false;

}

}

}

}

//获取文件名

function getname(){

return $this-newname;

}

}

原创文章,作者:HEWI,如若转载,请注明出处:https://www.506064.com/n/140426.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
HEWI的头像HEWI
上一篇 2024-10-04 00:23
下一篇 2024-10-04 00:23

相关推荐

  • Python语法大全解析

    本文旨在全面阐述Python语法,并提供相关代码示例,帮助读者更好地理解Python语言。 一、基础语法 1、Python的注释方式 # 这是单行注释 “”” 这是多行注释,可以注…

    编程 2025-04-29
  • 二级考级舞蹈大全目录

    本文将从以下多个方面对二级考级舞蹈大全目录进行详细阐述。 一、目录结构 二级考级舞蹈大全目录主要分为三级,即一级目录、二级目录和三级目录。其中,一级目录为舞蹈类型,二级目录为舞蹈名…

    编程 2025-04-29
  • Python命令大全及说明

    Python是一种高级编程语言,由Guido van Rossum于1989年底发明。它具有良好的语法结构和面向对象的编程思想,具有简洁、易读、易学的特点,是初学者以及专业开发人员…

    编程 2025-04-29
  • 百度网盘Python上传

    百度网盘是一个常用的云存储平台,提供了多种上传文件的方式,其中包括使用Python进行上传。本文将从安装Python、安装依赖库、上传文件三个方面进行详细阐述。 一、安装Pytho…

    编程 2025-04-28
  • 如何使用git拉出某个用户上传的文件?

    Git是一个非常流行的版本控制系统,它可以帮助团队协作,并保证代码的版本控制。有时候,我们需要拉出某个用户上传的文件,但不知道从哪里开始。本文将会从多个方面详细阐述如何使用git拉…

    编程 2025-04-28
  • Python海龟库代码大全

    Python海龟库是Python语言中一个常用的绘图库,它提供了一套海龟绘图的API,使得使用者可以通过编写相应的代码来控制海龟的行进路径,从而实现各种图形的绘制。本文将以Pyth…

    编程 2025-04-28
  • Python源程序文件类型名用法介绍

    Python语言是现今最流行的编程语言之一,因其简单易学、功能强大、可读性好而广泛应用于软件开发、数据科学、人工智能等领域。Python源程序文件类型名是指python程序文件以.…

    编程 2025-04-28
  • Python语句大全

    本文将详细阐述Python语句大全,并给出代码实例。 一、基本语句 Python基本语句包括赋值语句、条件语句、循环语句等,其中最基础的是赋值语句。如下: a = 1 b = 2 …

    编程 2025-04-28
  • 上传多媒体文件的常用方法——uploadmediabyurl

    uploadmediabyurl是一个非常常用的方法,它允许我们将本地的多媒体文件上传到微信服务器上。 一、uploadmediabyurl的基本使用方法 要使用uploadmed…

    编程 2025-04-27
  • NB设备上传数据方案

    NB(Narrow Band)是一种物联网通信技术,可以实现低功耗、宽覆盖、多连接等特点。本文旨在探讨如何使用NB设备上传数据。在这篇文章中,我们将介绍NB设备上传数据的基本原理、…

    编程 2025-04-27

发表回复

登录后才能评论