下面我们一起来看一个php jquery Ajax异步上传图片(ajaxSubmit)实例,这个我们真正的利用了ajax而不是使用iframe之类的哦。 效果如下 代码如下 复制代码 index.php文件 php结合jquery异步上传图片(ajaxSubmit),以下为提交页面代码: Ajax异步上传图片 <p>函数 sky_upfiles(){<br> varmesstxt;<br> $("#sky_upform").ajaxSubmit({<br> //数据类型:'脚本',<br> 类型:'帖子',<br> url: "doupfiles.php", <br> 提交前:函数(){<br> $("#sky_txt").html("图片上传中...");<br> },<br> 成功:函数(数据){ <br> if(data=="1"){<br> messtxt = "上传成功!";<br> }否则 if(数据=="-1"){<br> messtxt = "文件超过规定大小!";<br> }else if(data=="-2"){<br> messtxt = "文件类型不符!";<br> }else if(data=="-3"){<br> messtxt = "移动文件出错!";<br> }其他{<br> messtxt = "未知错误!";<br> }<br> $("#sky_txt").html(messtxt); <br> //$("#sky_txt").append(data);<br> },<br> 重置表单:假,<br> 清除形式:假<br> });<br> //$("#upimgform").submit();<br> }</p> <p> 脚本><br> </头><br> <br> <br /><br /> <fieldset style="width:97%"><br /> <legend>上传文件</legend><br /> <form enctype="multipart/form-data" id="sky_upform" name="sky_upform" action="" method="post"><br /> <表格宽度=“100%”边框=“0”对齐=“中心”cellpadding=“3”cellspacing=“0”><br /> <tr><br /> <td width=”100”align=”right” class=”f-12”></td><br> </p> </td> <td class="f-12" align="left"> <br> <输入名称=“upfile”id=“upfile”maxlength=“20”大小=“40”类型=“文件”值=“”/><输入名称=“upmit”类型=“按钮”id= "upmit" value="上传" onclick="sky_upfiles()"/><br /> <font color="red" id="sky_txt"></font></td><br> </td> </tr> <br> </表格><br> <br> </身体><br> </html> </tbody> </table> <p>doupfiles.php文件</p> <table style="background: #fb7" border="0" cellspacing="1" cellpadding="1" width="620" align="center"> <tbody> <tr> <td bgcolor="#ffe7ce" height="27" width="464"> 代码如下</td> <td style="cursor: pointer" bgcolor="#ffe7ce" width="109" align="center" onclick="doCopy('copy1157')">复制代码</td> </tr> <tr> <td style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px" id="copy1157" class="copyclass" bgcolor="#ffffff" valign="top" colspan="2"> <table style="background: #fb7" border="0" cellspacing="1" cellpadding="1" width="620" align="center"> <tbody> <tr> <td bgcolor="#ffe7ce" height="27" width="464"> 代码如下</td> <td style="cursor: pointer" bgcolor="#ffe7ce" width="109" align="center" onclick="doCopy('copy1157')">复制代码</td> </tr> <tr> <td style="padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px" id="copy1157" class="copyclass" bgcolor="#ffffff" valign="top" colspan="2"> <p><?php<br /> /*<br /> * 1:成功上传<br /> *-1:文件超过规定大小<br /> *-2:文件类型不符<br /> *-3:移动文件出错<br /> */<br /> if(is_uploaded_file($_FILES['upfile']['tmp_name'])){</p> <p> $photo_types=array('image/jpg', 'image/jpeg','image/png','image/pjpeg','image/gif','image/bmp','image/x-png');//定义上传格式<br /> $max_size=700000; //上传照片大小限制,默认700k<br /> $photo_folder="upload/".date("Y")."/".date("m")."/".date("d")."/"; //上传照片路径<br /> ///////////////////////////////////////////////////开始处理上传<br /> if(!file_exists($photo_folder))//检查照片目录是否存在<br /> {<br /> mkdir($photo_folder, 0777, true); //mkdir("temp/sub, 0777, true);<br /> }</p> <p>$upfile=$_FILES['upfile'];<br /> $name=$upfile['name'];<br /> $type=$upfile['type'];<br /> $size=$upfile['size'];<br /> $tmp_name=$upfile['tmp_name'];</p> <p>$file = $_FILES["upfile"];<br /> $photo_name=$file["tmp_name"];<br /> //echo $photo_name;<br /> $photo_size = getimagesize($photo_name);</p> <p>if($max_size < $file["size"])//检查文件大小<br /> echo "-1"; //echo "<script>alert('对不起,文件超过规定大小!');history.go(-1);"; if(!in_array($file["type"], $photo_types))//检查文件类型 echo "-2"; //echo "alert('对不起,文件类型不符!');history.go(-1);"; if(!file_exists($photo_folder))//照片目录 mkdir($photo_folder); $pinfo=pathinfo($file["name"]); $photo_type=$pinfo['extension'];//上传文件扩展名 $photo_server_folder = $photo_folder.time().".".$photo_type;//以当前时间和7位随机数作为文件名,这里是上传的完整路径 if(!move_uploaded_file ($photo_name, $photo_server_folder)) { echo "-3"; //echo "移动文件出错"; exit; } $pinfo=pathinfo($photo_server_folder); $fname=$pinfo['basename']; echo "1"; //echo " 已经成功上传:".$photo_server_folder.""; } ?> /* * 1:成功上传 *-1:文件超过规定大小 *-2:文件类型不符 *-3:移动文件出错 */ if(is_uploaded_file($_FILES['upfile']['tmp_name'])){ $photo_types=array('image/jpg', 'image/jpeg','image/png','image/pjpeg','image/gif','image/bmp','image/x-png');//定义上传格式 $max_size=700000; //上传照片大小限制,默认700k $photo_folder="upload/".date("Y")."/".date("m")."/".date("d")."/"; //上传照片路径 ///////////////////////////////////////////////////开始处理上传 if(!file_exists($photo_folder))//检查照片目录是否存在 { mkdir($photo_folder, 0777, true); //mkdir("temp/sub, 0777, true); } $upfile=$_FILES['upfile']; $name=$upfile['name']; $type=$upfile['type']; $size=$upfile['size']; $tmp_name=$upfile['tmp_name']; $file = $_FILES["upfile"]; $photo_name=$file["tmp_name"]; //echo $photo_name; $photo_size = getimagesize($photo_name); if($max_size < $file["size"])//检查文件大小 echo "-1"; //echo "alert('对不起,文件超过规定大小!');history.go(-1);"; if(!in_array($file["type"], $photo_types))//检查文件类型 echo "-2"; //echo "alert('对不起,文件类型不符!');history.go(-1);"; if(!file_exists($photo_folder))//照片目录 mkdir($photo_folder); $pinfo=pathinfo($file["name"]); $photo_type=$pinfo['extension'];//上传文件扩展名 $photo_server_folder = $photo_folder.time().".".$photo_type;//以当前时间和7位随机数作为文件名,这里是上传的完整路径 if(!move_uploaded_file ($photo_name, $photo_server_folder)) { echo "-3"; //echo "移动文件出错"; exit; } $pinfo=pathinfo($photo_server_folder); $fname=$pinfo['basename']; echo "1"; //echo " 已经成功上传:".$photo_server_folder.""; } ?> 最后把完整的php jquery Ajax异步上传图片(ajaxSubmit)实例源码下载地址