您的位置 首页 php

php文件上传实例

一、上传文件表单

<html>

<head>

<meta http-equiv=”Content-Type” content=”text/html;charset=UTF-8″>

<title> File Uploads </title>

</head>

<body>

<form action=”upload.php” method=”post” enctype=”multipart/form-data”>

shopname: <input type=”text” name=”shopname” > <br>

shopprice: <input type=”text” name=”price”> <br>

shopnum : <input type=”text” name=”num”> <br>

<input type=”hidden” name=”MAX_FILE_SIZE” value=”100000000″>

shoppic1: <input type=”file” name=”pic”> <br>

<input type=”submit” name=”sub” value=”上传”>

</form>

</body>

</html>

二、上传后的处理

<?php

header (‘Content-Type:text/html;charset=utf8’);

$fieldname=’pic’;

$filename=date(‘Y’).date(‘m’).date(‘d’).date(‘H’).date(‘i’).date(‘s’);

$filepath=’./uploads/’;

$maxSize=500000;//设置上传文件的大小:单位是B

$allowtype=array(‘jpg’,’jpeg’,’gif’,’png’);

uploadFile($_FILES, $fieldname,$filename, $filepath, $maxSize, $allowtype);

/*

* $files:上传文件资源句柄

* $fieldname:上传文件的表单名,本例中是’pic’

* $filename:新文件名(不需要指定拓展名)

* $filepaht:文件存放路径

* $allowtype:设定循序上传文件的类型

*

*/

function uploadFile($files,$fieldname,$filename,$filepath,$maxSize,$allowtype){

//step 1:检查错误

if($files[$fieldname][‘error’]>0){

switch ($files[$fieldname][‘error’]){

case 1:

echo “上传的文件超过了upload_max_filesize 选项限制的值<br>”;

break ;

case 2:

echo “上传文件超过了表单中 MAX_FILE_SIZE 选项指定的值”;

break;

case 3:

echo “文件只有部分被上传”;

break;

case 4:

echo “没有文件被上传”;

break;

case 6:

echo ‘找不到临时文件夹’;

break;

case 7:

echo ‘文件写入失败’;

break;

default:

echo “未知的错误”;

}

exit();

}

//step 2:检查大小

if($files[$fieldname][‘size’]>$maxSize){

echo ‘上传的文件太大,不要超过’.$maxSize.”;

exit();

}

//step 3:检查类型

$arr=explode(‘.’, $files[$fieldname][‘name’]);

$filetype=$arr[count($arr)-1];

if(!in_array($filetype, $allowtype)){

echo ‘文件类型不支持!’;

exit();

}

//step 4:改名、指定新路径

$filename=$filename.’.’.$filetype;

//step 5:移动

//特别注意:这里必须指明新文件名,否则将无法移动,暂不知什么原因

if(is_uploaded_file($files[$fieldname][‘tmp_name’])){

if(move_uploaded_file($files[$fieldname][‘tmp_name’], $filepath.$filename)){

echo ‘< script > alert (“上传成功!”)</script>’;

}else{

echo ‘<script>alert(“上传失败,路径错误或者没有权限!”)</script>’;

}

}else{

echo ‘这不是一个上传文件!’;

}

}

文章来源:智云一二三科技

文章标题:php文件上传实例

文章地址:https://www.zhihuclub.com/150992.shtml

关于作者: 智云科技

热门文章

网站地图