① php上传文件如何实现上传头像的时候可以显示出头像
两种方案:
前端直接使用 FileReader可以直接读取图片在前端显示,可以在用户点击确定后再通过 ajax上传到后端(当然,你也可以直接通过 form表单 submit提交)
用户点击上传文件的时候,直接用 ajax把图片是传到后端,后端回传图片在服务器中的地址,前端把这个图片显示出来。
② python上传图片头像。一个post 提交不知道怎么写这样的
首先你需要在你的表单上添加enctype="multipart/form-data"。
<formaction="/message/"enctype="multipart/form-data"method="post">
<inputtype="file"name="picfile">
<buttonvalue="提交"type="submit">提交</button>
</form>
其次看你后端的web框架,如果是django,你可以参考。
fromPILimportImage
try:
reqfile=
request.FILES['picfile']#picfile要和html里面一致
img=Image.open(reqfile)
img.thumbnail((500,500),Image.ANTIALIAS)#对图片进行等比缩放
img.save("/Users/bcc/Desktop/python/bbs/Image/a.png","png")#保存图片
exceptException,e:
returnHttpResponse("Error%s"%e)#异常,查看报错信息
如果解决了您的问题请采纳!
如果未解决请继续追问
③ 用Java如何实现头像上传
使用MyEclipse实现上传时,所选择的请求必须是POST请求,如下jsp:
<body>
<h3 align="left">
上传头像
</h3>
<br>
<form action="UploadServlet" method="post"
enctype="multipart/form-data">
姓名:
<input type="text" name="username">
<br>
头像:
<input type="file" name="photo">
<br>
<input type="submit" value="上传">
</form>
</body>
其次是需要添加上传的jar包commons-fileupload-1.3.1.jar、commons-io-2.4.jar
最后需要在Servlet中进行逻辑处理:
// 1、创建FileUpload对象
// (1)创建工厂
FileItemFactory factory = new DiskFileItemFactory();
// (2)创建FileUpload对象
ServletFileUpload upload = new ServletFileUpload(factory);
// (3)把请求中的所有数据转换成FileItem对象
try {
List<FileItem> list = upload.parseRequest(request);
// (4)判断是文件域还是表单域,如果是表单域,则返回true
for (int i = 0; i < list.size(); i++) {
if (list.get(i).isFormField()) {
// (5)获取input标签中name属性的值
if (list.get(i).getFieldName().equals("username")) {
// 输出提取到的具体的值
System.out.println("用户姓名为:"
+ list.get(i).getString("utf-8"));
}
} else {
// 输出上传的路径
System.out.println("upload的路径:"
+ getServletContext().getRealPath("upload"));
// 获取到上传的文件的名字
File file = new File(getServletContext().getRealPath(
"upload"),
list.get(i)
.getName()
.substring(
list.get(i).getName()
.lastIndexOf("\\") + 1));
list.get(i).write(file);
}
}