PHP+jQuery图片上传插件、多图片上传

网站程序 - PHP程序

2019-10-25

php

 查看演示  

效果图:

描述说明:

        

图片上传插件完美兼容所有浏览器(IE浏览器、火狐浏览器、谷歌浏览器、360浏览器等等)


使用方法:

1、引入jquery.js库文件1.8以上和jquery.wallform.js文件。

2、新建表单。

<div class="demo">
        <form id="imageform" method="post" enctype="multipart/form-data" action="upload.php">
			<div id="up_status" style="display:none"><img src="loader.gif" alt="uploading"/></div>
			<div id="up_btn" class="btn">
				<span>添加图片</span>
				<input id="photoimg" type="file" name="photoimg">
			</div>
		</form>
        <p>最大1024KB,支持jpg,gif,png格式。</p>
		<div id="preview"></div>
   </div>

3、添加以下JS,记住要加在表单前。

<script type="text/javascript">
$(function(){
	$('#photoimg').die('click').live('change', function(){
		var status = $("#up_status");
		var btn = $("#up_btn");
		$("#imageform").ajaxForm({
			target: '#preview', 
			beforeSubmit:function(){
				status.show();
				btn.hide();
			}, 
			success:function(){
				status.hide();
				btn.show();
			}, 
			error:function(){
				status.hide();
				btn.show();
		} }).submit();
	});
});
</script>

以下是PHP文件源码:

<?php
// +----------------------------------------------------------------------
// |	图片上传方法     Author:xiaochuan     28126649@qq.com
// +----------------------------------------------------------------------
$path = "./uploads/";
$extArr = array("jpg", "png", "gif");
if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST"){
	$name = $_FILES['photoimg']['name'];
	$size = $_FILES['photoimg']['size'];
	if(empty($name)) exit('请选择要上传的图片');

	$ext = extend($name);
	if(!in_array($ext,$extArr)) exit('图片格式错误!');
	if($size>(1024*1024)) exit('图片大小不能超过1024KB');

	$image_name = time().rand(100,999).".".$ext;
	$tmp = $_FILES['photoimg']['tmp_name'];
	if(move_uploaded_file($tmp, $path.$image_name)){
		echo '<img src="'.$path.$image_name.'"  class="preview">';
	}else{
		echo '上传出错了!';
	}
}
function extend($file_name){
	$extend = pathinfo($file_name);
	return strtolower($extend["extension"]);
}
?>