php批量上传

php批量上传代码

一直想找个简单的php批量上传代码,在网上找了好久都没找到。网上的不是用flash就是用js,很繁琐。今天随意翻看网页的时候,无意间发现input的multiple属性可以允许同时选中多个文件,把input的name设置为数组形式,就可以实现批量上传了。顺着这个思路又在网上找了找,发现没有这方面的文章,所以决定自己写一个。以我半吊子的php水平,竟然真让我写出来了~哈哈


<html>
<center>
<div style="margin:0 auto;height:600px;line-height:600px;" >
<form action="" method="post" enctype="multipart/form-data">
<input name="file[]" type="file" multiple />
<input type="submit" value="上传"  />
</form>
</div>
</center>
</html>

<?php

if(isset($_FILES['file']['tmp_name'][0])==true){
$i = "0";
do{
move_uploaded_file($_FILES['file']['tmp_name'][$i],$_FILES['file']['name'][$i]);
echo "<br />已上传:".$_FILES['file']['name'][$i];
$i++;
}while(isset($_FILES['file']['tmp_name'][$i])==true);
}

?>


新手拙作,高手勿喷。欢迎转载~~

发布日期:
分类:服务器

php判断远程文件是否存在

php判断远程文件是否存在

方法一(需要开启allow_url_fopen):



<?php
$url = "http://cn.wordpress.org/wordpress-3.3.1-zh_CN.zip";
$fileExists = @file_get_contents($url,null,null,-1,1) ? true : false ;
echo $fileExists; //返回1,就说明文件存在。
?>

方法二(需要服务器支持Curl组件):



<?php

function check_remote_file_exists($url) {
$curl = curl_init($url); // 不取回数据
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET'); // 发送请求
$result = curl_exec($curl);
$found = false; // 如果请求没有发送失败
if ($result !== false) {
// 再检查http响应码是否为200
$statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ($statusCode == 200) {
$found = true; } }
curl_close($curl); return $found; }

$url = "http://cn.wordpress.org/wordpress-3.3.1-zh_CN.zip";
echo check_remote_file_exists($url);//返回1,说明存在。

?>

发布日期:
分类:服务器

php获取远程文件大小

使用条件:需要服务器支持Curl组件

<?php
 
function remote_filesize($url,$user='',$pw='')
{
ob_start();
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_NOBODY, 1);
if (!empty($user)&&!empty($pw)) {
$headers = array('Authorization: Basic ' . base64_encode($user.':'.$pw));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
}
$okay = curl_exec($ch);
curl_close($ch);
$head = ob_get_contents();
ob_end_clean();
$regex = '/Content-Length:s([0-9].+?)s/';
$count = preg_match($regex, $head, $matches);
if (isset($matches[1])) {
$size = $matches[1];
} else {
$size = 'unknown';
}
return $size;
}
//计算远程文件大小
$url = "http://dl_dir.qq.com/qqfile/qq/QQ2011/QQ2011.exe";
$filesize = remote_filesize($url,$user='',$pw='')/1024/1024;
//显示远程文件大小
echo substr($filesize,0,5)."MB";
 
?>
发布日期:
分类:服务器

php下载远程文件到服务器,模拟离线下载功能

1.如果服务器支持allow_url_fopen选项:


if ((boolean)ini_get('allow_url_fopen')){
	$url = '';
	$file = file_get_contents($url);
	$fp = fopen(basename($url), 'wb');
	fwrite($fp, $file);
	fclose($fp);
}

2.如果服务器支持Curl组件:


if (function_exists('curl_init')){
	$url = '';
	$ch = curl_init($url);
	$fp = fopen(basename($url), 'wb');
	curl_setopt($ch, CURLOPT_FILE, $fp);
	curl_exec($ch);
	curl_close($ch);
	fclose($fp);
}

3.如果服务器支持fsockopen函数


if (function_exists('fsockopen')){
	$url = 'http://cn.wordpress.org/wordpress-3.7.1-zh_CN.zip';
	$url_info = parse_url($url);
	$host = $url_info['host'];
	$path = $url_info['path'];
	$fp = fsockopen($host, 80, $errno, $errstr, 30);
	if (!$fp) {
		echo "$errstr ($errno)<br />n";
	} else {
		$out = "GET ".$path." HTTP/1.1rn";
		$out .= "Host: ".$host."rn";
		$out .= "Connection: Closernrn";
		fwrite($fp, $out);
		$df = fopen(basename($path), 'w+');
		$i = 0;
		while(!feof($fp)){
			$fs = fgets($fp);
			if($i > 0){
				fwrite($df, $fs);
			}
			if($fs == "rn"){
				$i = 1;
			}
		}
		fclose($df);
		fclose($fp);
	}

}
发布日期:
分类:服务器

php压缩和解压zip代码

使用条件:如需在服务器上运行 Zip File 函数,必须安装这些库:

1.Guido Draheim 的 ZZIPlib 库
2.Zip PELC 扩展

可用phpinfo查看是否支持zip库


php压缩文件代码:


<?php

$zip = new ZipArchive;
$filename = "/www/test.txt";//要压缩的文件路径
$zipname = "test.zip";//压缩包文件名
if($zip->open($zipname,ZIPARCHIVE::CREATE) == TRUE){
	$zip->addFile($filename);
	$zip -> close();
echo '成功!';
}else{
	echo '失败。';
}

?>

php解压zip文件的代码:


<?php

$zip = new ZipArchive;
$filename = '/www/test.zip';
if($zip -> open($filename) == TRUE){
	$zip->extractTo('./');
	$zip->close();
	echo 'Success!';
}else{
	echo 'False!';
}

?>
发布日期:
分类:服务器

php的$_SERVER变量常用变量


$_SERVER['HTTP_ACCEPT_LANGUAGE']//浏览器语言
$_SERVER['REMOTE_ADDR'] //当前用户 IP 。
$_SERVER['REMOTE_HOST'] //当前用户主机名
$_SERVER['REQUEST_URI'] //此php脚本文件的相对路径
$_SERVER['REMOTE_PORT'] //端口。
$_SERVER['SERVER_NAME'] //服务器主机的名称。
$_SERVER['PHP_SELF']//正在执行脚本的文件名(相对路径加文件名)
$_SERVER['REQUEST_METHOD']//访问页面时的请求方法(post或get)
$_SERVER['DOCUMENT_ROOT'] //网站根目录
$_SERVER['SCRIPT_FILENAME'] //当前执行脚本的绝对路径名。
$_SERVER['SERVER_ADMIN'] //管理员信息
$_SERVER['SERVER_PORT']//服务器所使用的端口
$_SERVER['SERVER_SIGNATURE'] //包含服务器版本和虚拟主机名的字符串。
$_SERVER['SCRIPT_NAME'] //包含当前脚本的路径。
发布日期:
分类:服务器

修改WordPress评论表情

WordPress虽然自带表情功能,可是官方的表情实在不敢恭维。所以想自己换一个,在网上淘了好久,终于选定一个类似QQ默认表情的方形表情,就是本博现在用的表情啦,是不是很可爱呢~~

下面把修改的方法写一下,供需要的网友做个参考:

  1. WordPress表情文件的位置在wordpress根目录下wp-includes/images/smilies,里面有22个gif文件,就是官方的表情文件。下载附件的Wordpress-qq.zip解压到这个文件夹里,覆盖源文件。(如果想恢复原表情,可以在安装包里提取原版表情)
  2. 开启Wrodpress表情功能。(3.2.1默认开启)
    进入后台-设置-撰写-格式:在 前打勾
  3. 覆盖了表情文件以后,会发现评论框有点窄,和表情不太对齐(不同主题显示效果不同)。这时可以修改你当前所用的主题文件夹下的style.css文件(推荐用Notepad++修改),在最后一行添加:
    .comment-form-comment{width: 650px;height: 200px;}
  4. OK,完工~
发布日期:
分类:服务器

php批量上传程序–基于swfupload,支持中文文件名

php批量上传程序–基于swfupload,支持中文文件名

基于swfupload制作的批量上传程序,改自官网的simpledemo。

预览:

 

*********************************************

测试地址:http://moguw.co.cc/swfup (国外服务器,有点慢)

说明:

  1. 修改了界面css,改成居中。
  2. 增加上传速度、剩余时间、进度显示。
  3. 修复上传中文文件名乱码。
发布日期:
分类:服务器