php怎样设置允许哪些类型的文件上传,请给出代码谢谢 10

php怎样设置允许哪些类型的文件上传,请给出代码谢谢急求~~... php怎样设置允许哪些类型的文件上传,请给出代码谢谢急求~~ 展开
 我来答
iinnersky
2010-04-27 · TA获得超过173个赞
知道答主
回答量:128
采纳率:0%
帮助的人:134万
展开全部
下面是一个图片上传代码 通过$upfile["type"]获得上传文件类型 查看该类型是否在$phtypes内即判断是否是允许上传类型 根据自己的改
<?
$path='img/';
$phtypes=array(
'img/gif',
'img/jpg',
'img/jpeg',
'img/bmp',
'img/pjpeg',
'img/x-png'
);
?>
<html><body>
<form method="post" enctype="multipart/form-data" name="form1">
<table>

<tr><td>上传图片</td></tr>
<tr><td><input type="file" name="photo" size="20" /></td></tr>
<tr><td><input type="submit" value="上传"/></td></tr>
</table>
允许上传的文件类型为:<?=implode(', ',$phtypes)?></form>
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){

if (!is_uploaded_file($_FILES["photo"][tmp_name])){
echo "图片不存在";
exit();
}

if(!is_dir('img')){//把图片放在 img文件夹内 若该文件夹不存在 则创建
mkdir('img');
}

$upfile=$_FILES["photo"]; //echo $upfile["type"];//image/jpg
$pinfo=pathinfo($upfile["name"]);//echo $name;//tiger.jpg
$name=$pinfo['basename'];
$tmp_name=$upfile["tmp_name"];
$file_type=$pinfo['extension'];
$showphpath=$path.$name;
$image_size=getimagesize($tmp_name);//图片信息
$fh= $image_size[1];//图片高
$fw=$image_size[0];//图片宽
$wbh=$fw/$fh;//高宽比

if(in_array($upfile["type"],$phtypes)){//!待定,冲突
echo "文件类型不符!";
exit();
}
//$img=$destination_folder;//方向/\
if(move_uploaded_file($tmp_name,$path.$name)){
echo "成功!";
}
echo "<img src=\"".$showphpath."\" hight=\"100\" width=\"100*$wbh\" />";//显示图片
}
?>
</body>
</html>

如果你不知道要上传的文件是什么类型 可用下面代码确定
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
$upfile=$_FILES["photo"];
echo $upfile["type"];
}else{
echo "exception";//这里显示的就是 文件类型
}

?>
<form method="post" enctype="multipart/form-data" name="form1">
<table>
<tr><td>上传图片</td></tr>
<tr><td><input type="file" name="photo" size="20" /></td></tr>
<tr><td><input type="submit" value="上传"/></td></tr>
</table>
IT小中
2010-04-27 · TA获得超过149个赞
知道小有建树答主
回答量:265
采纳率:0%
帮助的人:153万
展开全部
$_FILES 用这个来判断类型

$_FILES数组内容如下:

$_FILES['myFile']['name'] 客户端文件的原名称。
$_FILES['myFile']['type'] 文件的 MIME 类型,需要浏览器提供该信息的支持,例如"image/gif"。
$_FILES['myFile']['size'] 已上传文件的大小,单位为字节。
$_FILES['myFile']['tmp_name'] 文件被上传后在服务端储存的临时文件名,一般是系统默认。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式