当前位置:首页 » 文件管理 » php上传rar

php上传rar

发布时间: 2022-09-08 15:26:21

Ⅰ 求php网页上传文件代码.

自定义文件上传函数


<?php
/**
* 文件上传
*/
/**
* 文件上传函数
* @param $name string 表单上传框的name值
* @param $file_arr array 上传文件的类型限制
* @param $filesize int 上传文件限制其大小
* @param $path string 文件的保存路径
* @return string 成功返回 "上传成功及文件名"
*/
function uploads($name,$file_arr=array('jpg','png','gif','JPG','GIF','PNG'),$filesize=3145728,$path='uploads'){
//1、检测文件的错误信息,如果是0 就允许上传(保存)
$err=$_FILES[$name]['error'];
if($err>0){
if($err==1){
return '上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。';
}elseif($err==2){
return '上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。 ';
}elseif($err==3){
return '文件只有部分被上传。';
}elseif($err==4){
return'没有文件上传';
}elseif($err>=5){
return '其他错误';
}
}
//2、检测文件的类型,是否是我们需要的(png、gif、jpg)
$pre=pathinfo($_FILES[$name]['name'],PATHINFO_EXTENSION);
if(!in_array($pre,$file_arr)){
return '上传的文件类型不符';
}
//3、检测文件大小
if($_FILES[$name]['size']>$filesize){
return '上传的文件太大';
}
//4、保存文件
$file_name=date('YmdHis',time()).mt_rand(1000,9999).'.'.$pre;
if(is_uploaded_file($_FILES[$name]['tmp_name'])){
move_uploaded_file($_FILES[$name]['tmp_name'], $path."/".$file_name);
return '上传成功|'.$file_name;
}else{
return "文件上传失败!";
}

}
?>

Ⅱ php上传如何设置才能上传压缩包跟txt文本

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>网页教学网(webjx.com)文件上传实例</title>

</head>

<body>

<form enctype="multipart/form-data" action=upfile.php method=post>

<input type="hidden" name="MAX_FILE_SIZE" value="2000000">

<input type=file name=upfile size=20>

<input type=submit value='上传文件'>

</form>

</body>

</html>
<?

function getname($exname){

$dir = "../uploadfile/";

$i=1;

if(!is_dir($dir)){

mkdir($dir,0777);

}

while(true){

if(!is_file($dir.$i.".".$exname)){

$name=$i.".".$exname;

break;

}

$i++;

}

return $dir.$name;

}

$exname=strtolower(substr($_FILES['upfile']['name'],(strrpos($_FILES['upfile']['name'],'.')+1)));

$uploadfile = getname($exname);

if (move_uploaded_file($_FILES['upfile']['tmp_name'], $uploadfile)) {

echo "<h2><font color=#ff0000>文件上传成功!</font></h2><br><br>";

}else {

echo "<h2><font color=#ff0000>文件上传失败!</font></h2><br><br>";

}

echo "下面是文件上传的一些信息:

<br><br>原文件名:".$_FILES['upfile']['name'] .

"<br><br>类型:" .$_FILES['upfile']['type'] .

"<br><br>临时文件名:".$_FILES['upfile']['tmp_name'].

"<br><br>文件大小:".$_FILES['upfile']['size'] .

"<br><br>错误代码:".$_FILES['upfile']['error'];
?>
一般文件都是可以传的!文件太大就不行了!

Ⅲ PHP文件上传类型限制

有两种方式可以给你解决,也可以几种方式同时使用

  1. 使用原本自带的函数getimagesize来判断是否是图片

  2. 使用获取上传文件头的方式来判断

$filename='xxxx.gif';
$file=fopen($filename,'rb');
$bin=fread($file,2);//只读取上传文件的头文信息的2个字节
fclose($file);
$strInfo=@unpack('c2chars',$bin);
$typeCode=intval($strInfo['chars1'].$strInfo['chars2']);
$fileType='';
switch($typeCode){
case7790:
$fileType='exe';
break;
case7784:
$fileType='midi';
break;
case8297:
$fileType='rar';
break;
case255216:
$fileType='jpg';
break;
case7173:
$fileType='gif';
break;
case6677:
$fileType='bmp';
break;
case13780:
$fileType='png';
break;
default:
echo'unknown';
break;
}
echo'文件类型:'.$fileType.'文件头信息:'.$typeCode;

希望对你有用!

Ⅳ PHP判断上传上来的RAR文件是否被加密

RAR构成到Winrar目录下找TechNote.txt
比较复杂,需要拆文件头,大概是0x17为80就是没加密的,加密的见过有C4,有84.(末尾都是4)
你再研究下.
===============
从文件外皮看不出是否加密的,必须拿到一点文件头才行,不了解客户端的程序,应该可以类似网易相册那样在客户机本地就完成判

Ⅳ php用ci框架上传rar或者zip文件的,没办法上传,其他文件都可以,求解,地址不到mysql数据库

一,首先在form表单加上enctype="multipart/form-data"说明该表单用来上传文件
二,特别注意的是,:默认情况下上传的文件来自于提交表单里名为userfile的文件域
三,$this->upload->data()这是一个辅助函数,它返回你上传文件的所有相关信息的数组

Ⅵ php文件上传RAR的mime类型

首先要建立一个文件夹和两个文件,具体如下:

File ——————文件夹,用于存放上传的文件。
choose.htm ——————htm文件,用于选择上传的文件。
upload.php ——————php文件,用于处理上传的文件。

第一步:建立 File 文件夹。

第二步:建立 choose.htm 文件,代码如下:
____________________________________________________________________________________________________________

<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="hidden" name="MAX_FLIE_SIZE" value="1000000" />
上传此文件:
<input name="userfile" type="file" id="userfile" />
<input type="submit" name="Submit" value="上传" />
</form>
____________________________________________________________________________________________________________

第三步:建立 upload.php 文件,代码如下:
____________________________________________________________________________________________________________
<?php

//上传文件错误判定
if($_FILES['userfile']['error']>0)
{
echo '错误:';

switch($_FILES['userfile']['error'])
{
case 1: echo '文件尺寸超过允许的最大上传限度!'; break;
case 2: echo '文件尺寸超过允许的最大上传限度!'; break;
case 3: echo '只有部分文件被上传!'; break;
case 4: echo '没有任何文件被上传!'; break;
}
exit;
}

//上传文件格式判定
if($_FILES['userfile']['type'] !='text/plain')
{
echo '错误:非法文件格式!';
exit;
}

//设置文件保存路径
$upfile = './File/' . $_FILES['userfile']['name'];

if(is_uploaded_file($_FILES['userfile']['tmp_name']))
{
if(!move_uploaded_file($_FILES['userfile']['tmp_name'],$upfile))
{
echo '错误:没有将文件移动到指定目录!';
exit;
}
}
else
{
echo '错误:可能文件上传被攻击!文件名:';
echo $_FILES['userfile']['name'];
}

echo '文件上传成功!';

//格式化上传的文件
$fp = fopen($upfile,'r');
$contents = fread($fp,filesize($upfile));
fclose($fp);

$contents = strip_tags($contents);
$fp = fopen($upfile,'w');
fwrite($fp,$contents);
fclose($fp);

//显示上传文件内容
echo '上传文件的内容为:';
echo $contents;
?>
____________________________________________________________________________________________________________

测试一下:

1、建立一个 123.txt 文件,里面输入一些纯文本字符,比如 abc,上传成功!

2、我们再来试看其他后缀名,如.exe,.php,.htm之类的,只要非txt,就将导致失败!

3、把任意一个大于1M的文件名改为123.txt并上传,我们将发现超过限制大小的文件将导致上传失败!

4、将123.txt的内容改掉,删除所有内容,输入 <html>HTML code</html>,保存并上传,我们会发现上传失败!

5、将123.txt的内容改掉,删除所有内容,输入 <?php echo'PHP code'; ?>保存并上传,我们会发现 File 文件夹中有一个0字节的,没有任何内容的123.txt文件!

Ⅶ php 怎把上传的rar zip文件 自动解压 用的是哪个函数 求高手指点 告急 谢谢 求源代码

/**
* PHP在线压缩/解压实例
*/

date_default_timezone_set('prc');

$zip = new engine_compress_decompress();

if (isset($_POST))
{
$sourcePath = ''; //默认位置

if (isset($_FILES['upfile'])) //上传文件
{
$stmp = $zip->fileUpload('upfile');
$sourcePath = $stmp['sourcefile'];
$upfileError = $stmp['error'];
}
elseif (isset($_POST['inputfile'])) //输入目录或者文件
{
$sourcePath = $_POST['inputfile'];
}
elseif (isset($_POST['decompresssourcefiles'])) //解压缩提交
{
$isDecompress = $zip->decompress($_POST['decompresssourcefiles'], $_POST['topath']);
if (!empty($isDecompress['filelist']))
{
$href = '<script type="text/javascript" language="javascript">window.location.href=\'#decompress\'</script>';
}

}

$fileList = $zip->fileArray($sourcePath); //解压缩文件列表

if (isset($_POST['compressinputfileorfolder'])) //压缩文件目录或者文件输入
{
$sourcePath = $_POST['compressinputfileorfolder'];
$href = '<script type="text/javascript" language="javascript">window.location.href=\'#compress\'</script>';
$compressFilelist = $zip->compressFileArray($sourcePath); //压缩文件列表
}
elseif ((isset($_POST['selectcompressfilelist'])) && (isset($_POST['compresssavefilename'])))
{
$compressFiles = $zip->compress($_POST['selectcompressfilelist'], $_POST['compresssavefilename']); //真实检测
$isCompress = $zip->CompileZipFile($compressFiles, $zip->savePath, 'all');
if (!empty($isCompress))
{
$href = '<script type="text/javascript" language="javascript">window.location.href=\'#compress\'</script>';
}
}
}

Ⅷ 如何用PHP上传RAR压缩包同时解压到指定目录

<?php
header("content-type:text/html;charset=utf-8");
$path=getcwd();//获取当前系统目录
if($_POST['sub'])
{
$tname=$_FILES["ufile"]["tmp_name"];
$fname=$_FILES["ufile"]["name"];

move_uploaded_file($tname,$fname);

$obj=newcom("wscript.shell");//使用PHP预定义的Com组件加载Shell,加载wscript.shell用来执行dos命令的组件
$obj->run("winrarx$path\".$fname."".$path,1,true);//所要执行的命令

unlink($fname);//解压后删除已上传的压缩文件

}
?>

<formaction=""method="post"enctype="multipart/form-data">
选择要上传的文件:<inputtype="file"name="ufile">
<inputtype="submit"name="sub"value="上传压缩文件并解压">
</form>

Ⅸ php如何上传一个压缩文件

<formenctype="multipart/form-data"action="singleupload.php"method="post">
<inputtype="hidden"name="MAX_FILE_SIZE"value="2000000">
<inputtype=filename=upfilesize=20>
<inputtype=submitvalue="上传文件">
</form>
if(move_uploaded_file($_FILES['upfile']['tmp_name'],$_FILES['upfile']['name'])){
echo"<h2><fontcolor=#ff0000>文件上传成功!</font></h2><br><br>";
}else{
echo"<h2><fontcolor=#ff0000>文件上传失败!</font></h2><br><br>";
}

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

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

热点内容
高速缓存设计博士论文 发布:2024-10-11 19:19:29 浏览:650
adb源码下载 发布:2024-10-11 19:15:08 浏览:977
vbe编程 发布:2024-10-11 19:08:18 浏览:401
手机怎么缓存微博视频怎么下载视频怎么下载 发布:2024-10-11 19:07:41 浏览:429
安卓误删软件如何下回来 发布:2024-10-11 19:03:58 浏览:428
python多少钱 发布:2024-10-11 19:03:58 浏览:526
如何查nginx服务器ip 发布:2024-10-11 18:58:57 浏览:351
sql语句增加字段 发布:2024-10-11 18:58:54 浏览:907
cctv报道加密货币 发布:2024-10-11 18:58:11 浏览:663
沃尔沃xc40值得买哪个配置 发布:2024-10-11 18:49:44 浏览:587