电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

图片保存到mysql数据库

10页
  • 卖家[上传人]:m****
  • 文档编号:473031757
  • 上传时间:2023-07-12
  • 文档格式:DOC
  • 文档大小:20.01KB
  • / 10 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、在我们设计和制作网站的过程中,有时把图片保存到数据库中要比存成文件的形式更加方便。PHP和MySQL这对黄金组合可以很容易的实现上述功能。在本文中,我们将会向读者介绍如何把图片保存到MySQL数据库中以及如何将数据库中的图片显示出来。设置数据库 我们通常在数据库中所使用的文本或整数类型的字段和需要用来保存图片的字段的不同之处就在于两者所需要保存的数据量不同。MySQL数据库使用专门的字段来保存大容量的数据,数据类型为BLOB。MySQL数据库为BLOB做出的定义如下:BLOB数据类型是一种大型的二进制对象,可以保存可变数量的数据。BLOB具有四种类型,分别是TINYBLOB,BLOB, MEDIUMBLOB 和LONGBLOB,区别在于各自所能够保存的最大数据长度不同。在介绍了所需要使用的数据类型之后,我们可以使用以下语句创建保存图象的数据表。CREATE TABLE Images ( PicNum int NOT NULL AUTO_INCREMENT PRIMARY KEY, Image BLOB );编写上传脚本 关于如何实现文件的上传,我们在这里就不再介绍了。现在,我们主要来看

      2、一下如何接收上传文件并将其存入到MySQL数据库中。具体的脚本代码如下,其中我们假定文件上传域的名称为Picture。这样,我们就可以成功的把图片保存到数据库中。如果在将图片插入MySQL的过程中出现问题,可以检查一下MySQL数据库所允许的最大数据包的大小。如果设置值过小的话,我们会在数据库的错误日志中找到相应的记录。下面,我们简单说明一下上述脚本程序。首先,我们通过“If($Picture != none)”检查是否有文件被上传。然后,使用addslashes()函数避免出现数据格式错误。最后,连接MySQL,选择数据库并插入图片。显示图片 在知道了如何将图片存入数据库之后,我们就需要考虑怎样才能从数据库中取出图片并在HTML页面中显示出来。这个过程要稍微复杂一些,下面我们就来介绍一下实现过程。因为PHP显示图片需要发送相应的标头,所以我们就会面临这样一个问题,那就是一次只能显示一副图片,因为我们无法在发出标头之后再发送其它的标头。为了有效的解决这一问题,我们编写了两个文件。其中,第一个文件作为HTML页面的模板,定位图片的显示位置。第二个文件则被用来从数据库中实际输出文件流,作为

      3、标签的SRC属性。第一个文件的简单形式可以如下: ? mysql_connect($host,$username,$password) or die(Unable to connect to SQL server); mysql_select_db($db) or die(Unable to select database); $result=mysql_query(SELECT * FROM Images) or die(Cant Perform Query); While($row=mysql_fetch_object($result) echo PicNum; ? 当HTML页面被浏览时,每显示一副图片就会调用一次Second.php3文件。当第二个文件被调用时会传入相应的Picture ID,我们可以借此从数据库中取回对应的图片并显示。Second.php3文件如下:Image; ?到此,我们就介绍完了使用PHP和MySQL保存和显示图片的全过程。文中所举得都是一些最简单的实例,读者可以根据自己的实际需要加入其它一些功能,使整个程序更加完善。、+如果你想把二进制的数据,比如说图

      4、片文件和HTML文件,直接保存在你的MySQL数据库,那么这篇文章就是为你而写的!我将告诉你怎样通过HTML表单来储存这些文件,怎样访问和使用这些文件。 一、本文概述 本文的主要内容如下: 在MySQL中建立一个新的数据库 一个怎样储存文件的例子程序 一个怎样访问文件的例子程序 二、在MySQL中建立一个新的database 首先,你必须在你的MySQL中建立一个新的数据库,我们将会把那些二进制文件储存在这个数据库里。在例子中我会使用下列结构,为了建立数据库,你必须做下列步骤: 1.进入MySQL控制器 2.输入命令createdatabasebinary_data; 3.输入命令usebinary_data; 输入如下命令: CREATETABLEbinary_data(idINT(4)NOTNULLAUTO_INCREMENTPRIMARYKEY,descriptionCHAR(50),bin_dataLONGBLOB,filenameCHAR(50),filesizeCHAR(50),filetypeCHAR(50);(不能断行) 如果没有意外,数据库和表应该建立好了。 三、一个

      5、怎样储存文件的例子程序 用这个例子你可以通过Html表单将文件传输到数据库中。 store.php3 /store.php3-byFlorianDittmer ? /如果提交了表单,代码将被执行: if($submit) /连接到数据库 /(你可能需要调整主机名,用户名和密码) MYSQL_CONNECT(localhost,root,password); MySQL_select_db(binary_data); $data=addslashes(fread(fopen($form_data,r),filesize($form_data); $result=MYSQL_QUERY(INSERTINTObinary_data(description,bin_data,filename,filesize,filetype)VALUES($form_description,$data,$form_data_name,$form_data_size,$form_data_type); $id=MySQL_insert_id(); printThisfilehasthefollowingDat

      6、abaseID:$id; MYSQL_CLOSE(); else /否则显示储存新数据的表单 ? MySQL_select_db(binary_data); $query=selectbin_data,filetypefrombinary_datawhereid=$id; $result=MYSQL_QUERY($query); $data=MYSQL_RESULT($result,0,bin_data); $type=MYSQL_RESULT($result,0,filetype); Header(Content-type:$type); echo$data; ; ? 程序必须知道要访问那个文件,你必须将ID作为一个参数。 例如:一个文件在数据库中的ID为2.你可以这样调用它:getdata.php3?id=2 如果你将图片储存在数据库里,你可以向调用图片一样调用它。 Example:一个图片文件在数据库中的ID为3.你可以这样调用它: 五、怎样储存大于1MB的文件 如果你想储存大于1MB的文件,你必须对你的程序、PHP设置、SQL设置进行许多修改。 下面几条也许可以帮助你储存小于24MB的文件: 1)修改store.php3,将MAX_FILE_SIZE的值改成24000000。 2)修改你的PHP设置,在一般情况下,PHP只允许小于2MB的文件,你必须将max_filesize(在php.ini中)的值改成24000000 3)去掉MYSQL的数据包大小限制,在一般情况下MYSQL小于1MB的数据包。 4)你必须用以下参数重启你的MYSQL:/usr/local/bin/safe_MySQLd-Okey_buffer=16M-Otable_cache=128-Osort_buffer=4M-Orecord_buffer=1M-Omax_allowed_packet=24M 5)如果仍然出错:可能是超时错误,如果你通过一个很慢的连接来储存一个很大的文件,PHP缺省的时间限制为30秒。你可以将max_execution_time(在php.ini中)的值改为-1。

      《图片保存到mysql数据库》由会员m****分享,可在线阅读,更多相关《图片保存到mysql数据库》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.