上传图片到服务器的两种方式及优劣分析:二进制存数据库与本地存图存地址
本篇内容讲解了“ajax 怎样将多图上传到 php 服务器”的相关知识。在实际案例的操作期间,许多人都会碰到这样的难题。接下来,让小编引导大家学习一下该怎样处理这些状况吧!希望大家认真阅读,能够有所收获!

一般上传图片到服务器有两种方式:
把图片转换成二进制直接存储到数据库里
把图片存储到本地目录,并将图片地址存储到数据库里
先粗浅地谈下我对这两种存储方法的优劣点的认识:
图片转换成二进制直接存储到数据库有优点,其优点在于有利于数据的备份和迁移。然而,也存在缺点,缺点就是会对数据读写速率产生影响。通常情况下,对于大图和多图不建议采用此方式。而在一般存储用户头像以及富文本内容时,可以应用此方式。
将图片存储到本地目录,这样在数据库上只存储图片路径。其优点在于有利于数据的读写,因为存一个地址比存整个图片的大小要小得多。然而,缺点是不利于数据的备份和迁移。
先介绍一下存储图片路径的方法:
html代码:
ajax请求:
定义函数 fsubmit()。获取 id 为“form1”的表单,记为 form1。创建一个新的 FormData 对象,将 form1 传入,记为 fd。使用 jQuery 的 ajax 方法进行请求,设置请求的 url 为“photo.php”,类型为“POST”,数据为 fd,设置 processData 为 false,contentType 为 false。在请求成功的回调函数中,获取 xhr 对象并打印到控制台,将响应字符串 response 解析为 JSON 对象,记为 json。定义一个空字符串 result。将 result 加上换行符和一个空字符串。
result 进行累加操作,加上了 。
'; result += '
使用 json["photo2"];将 result 赋值给 #result 的 html 内容;} }); 返回 false;
php代码:photo.php
最后输出 json_encode($response)。
数据库表无需粘贴,其用于存储图片地址,字段类型直接采用字符型即可。
现在在介绍一下把图片转换成二进制直接存进数据库的方法:
我在这里没有采用 ajax 请求的方式,而是直接使用表单的 post 请求来提交数据。
html代码:
php代码:photo.php
mysql最后执行 exit() 退出程序。
这样就把图片转换成二进制并储存进数据库了。
“ajax 上传多图到 php 服务器的相关内容已介绍完毕。感谢各位的阅读。若想了解更多行业知识,可关注编程网网站,小编将为大家输出更多高质量实用文章。”