当前位置:首页 » 文件管理 » jquery批量上传php

jquery批量上传php

发布时间: 2022-10-20 10:24:11

① thinkphp如何批量上传图片

批量上传图片就是循环的单张上传~~,思路和单张上传差不多的~

② 【高分悬赏】jquery ajax批量添加数据 通过PHP写进MYSQL。。。

这个貌似你只需要一次ajax请求吧。
参数:发消息的人的ID,消息内容,接受消息的好友(全部就为空,部分就[1,5,9,11])
其他的就服务器程序处理了。
你这样要请求个无数次,有什么意义呢?纯粹是自己在给服务器增加压力

③ php使用jquery无刷新上传,可预览,删图

可以批量上传图片什么的以及可以预览的都是用flash来实现的
js最多只能单张上传,还不能预览。

④ 我需要一个js或者jquery能批量上传图片+预览的功能。急~~~急~~~急~~

WebUploader项目,符合你的要求。

//文件上传过程中创建进度条实时显示。
uploader.on('uploadProgress',function(file,percentage){
var$li=$('#'+file.id),
$percent=$li.find('.progressspan');

//避免重复创建
if(!$percent.length){
$percent=$('<pclass="progress"><span></span></p>')
.appendTo($li)
.find('span');
}

$percent.css('width',percentage*100+'%');
});
//文件上传成功,给item添加成功class,用样式标记上传成功。
uploader.on('uploadSuccess',function(file){
$('#'+file.id).addClass('upload-state-done');
});

//文件上传失败,显示上传出错。
uploader.on('uploadError',function(file){
var$li=$('#'+file.id),
$error=$li.find('div.error');

//避免重复创建
if(!$error.length){
$error=$('<divclass="error"></div>').appendTo($li);
}

$error.text('上传失败');
});

//完成上传完了,成功或者失败,先删除进度条。
uploader.on('uploadComplete',function(file){
$('#'+file.id).find('.progress').remove();
});

更多细节,请查看js源码

⑤ uploadify批量上传

创建了一个web project
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar

首先把这两个jar文件引入了path
然后创建了一个servlet
Upload.java(用的MyEclipse自动配置了web.xml部署描述符)

[java] view plain
//Upload.java
package com.uploadify.servlet;

import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

import com.uploadify.utils.IPTimeStamp;

public class Upload extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

String savePath = this.getServletConfig().getServletContext()
.getRealPath("");
// 得到项目的工作目录
savePath = savePath + "/uploads/";
File f1 = new File(savePath);
// 如果没有的话就创建目录
if (!f1.exists()) {
f1.mkdirs();
}
DiskFileItemFactory fac = new DiskFileItemFactory();
ServletFileUpload upload = new ServletFileUpload(fac);
upload.setHeaderEncoding("utf-8");
List fileList = null;
try {
fileList = upload.parseRequest(request);
} catch (FileUploadException ex) {
return;
}
Iterator<FileItem> it = fileList.iterator();
String name = "";
String extName = "";
while (it.hasNext()) {
FileItem item = it.next();
if (!item.isFormField()) {

// 解析文件
name = item.getName();
long size = item.getSize();
String type = item.getContentType();
if (name == null || name.trim().equals("")) {
continue;
}
// 得到文件的扩展名
if (name.lastIndexOf(".") >= 0) {
extName = name.substring(name.lastIndexOf("."));
}
File file = null;
do {
// 利用客户端IP+时间+三位随机数字生成非重复文件名:
name = new IPTimeStamp().getIPTimeStampRandom();
file = new File(savePath + name + extName);
} while (file.exists());
File saveFile = new File(savePath + name + extName);
try {
item.write(saveFile);
} catch (Exception e) {
e.printStackTrace();
}
}
}
response.getWriter().print(name + extName);
}

}
生成文件名字的Utils类,可以清楚的记录名字,然后对上传的文件进行处理,并且防止文件名字重复

[java] view plain
//PTimeStamp.java
package com.uploadify.utils;

import java.net.InetAddress;
import java.net.UnknownHostException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;

public class IPTimeStamp {
private String ip;
private Date date;
private SimpleDateFormat format;

public IPTimeStamp() {
try {
ip = InetAddress.getLocalHost().getHostAddress();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

public String getTimeStamp() {
format = new SimpleDateFormat("yyyyMMddHHmmssSSS");
return format.format(new Date());
}

public String addZero(String str, int len) {
StringBuffer sb = new StringBuffer();
sb.append(str);
while (sb.length() < len) {
sb.insert(0, "0");
}
return sb.toString();
}

public String getIPTimeStampRandom() {
StringBuffer sb = new StringBuffer();
String[] ips = this.ip.split("\\.");

for (int j = 0; j < ips.length; j++) {
// System.out.println(ips[j]);
sb.append(this.addZero(ips[j], 3));
}
sb.append(this.getTimeStamp());
Random rod = new Random();
for (int i = 0; i < 3; i++) {
sb.append(rod.nextInt(10));
}
return sb.toString();
}
}

部署描述符

[html] view plain
<!--web.xml-->
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>Upload</servlet-name>
<servlet-class>com.uploadify.servlet.Upload</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>Upload</servlet-name>
<url-pattern>/Upload</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>

在WebROOT下面创建folder->js

放入解压包里面的
jquery.uploadify.v2.1.4.js
jquery.uploadify.v2.1.4.min.js
jquery-1.4.2.min.js
swfobject.js

css->
uploadify.css

images->
cancel.png
[html] view plain
<!--index.jsp-->
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'index.jsp' starting page</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<link href="css/uploadify.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="js/swfobject.js"></script>
<script type="text/javascript" src="js/jquery.uploadify.v2.1.4.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("#uploadify").uploadify({
'uploader' : 'uploadify.swf',
'script' : 'Upload',
'cancelImg' : 'images/cancel.png',
'folder' : 'uploads',
'queueID' : 'fileQueue',
'auto' : false,
'multi' : true,
'simUploadLimit' : 2,
'buttonText' : 'BROWSE'
});
});
</script>
</head>

<body>
<div id="fileQueue"></div>
<input type="file" name="uploadify" id="uploadify" />
<p>
<a href="javascript:jQuery('#uploadify').uploadifyUpload()">开始上传</a>
<a href="javascript:jQuery('#uploadify').uploadifyClearQueue()">取消所有上传</a>
</p>
</body>
</html>

⑥ jquery 上传文件插件uploadify jsp版本

写一个servlet,看这里
http://www.javaeye.com/topic/376101

⑦ jquery怎么实现多文件上传 php

jquery有个插件叫uploadify

http://www.uploadify.com/

$(function(){
$("#file_upload_1").uploadify({
height:30,
swf:'/uploadify/uploadify.swf',
uploader:'/uploadify/uploadify.php',
width:120
});
});

⑧ javascript(jquery)怎么传变量给php

可以使用ajax来实现

$.ajax({
type:'post',
url:"你的php地址+参数",
success:function(data){
php返回的结果就是data
}
});

请将jquery引入到网页,不然无法使用。

还有什么问题欢迎追问。

热点内容
直出服务器怎么样 发布:2024-10-07 15:41:36 浏览:476
比亚迪唐dmi哪个配置性价比 发布:2024-10-07 15:19:28 浏览:901
编译器按变量 发布:2024-10-07 15:07:03 浏览:773
怎么忘记电脑wifi密码怎么办 发布:2024-10-07 15:02:18 浏览:424
安卓开发java开发 发布:2024-10-07 15:01:29 浏览:94
工业级安卓主板价格怎么样 发布:2024-10-07 14:07:57 浏览:627
编程先乘除 发布:2024-10-07 13:58:45 浏览:270
编译内核时发生循环编译 发布:2024-10-07 13:58:43 浏览:496
当下笔记本电脑什么配置好 发布:2024-10-07 12:57:33 浏览:471
安卓倒车轨迹怎么调 发布:2024-10-07 12:54:47 浏览:916