PHP上传图片到数据库并显示的实例代码


Posted in PHP onDecember 20, 2019

PHP上传图片到数据库并显示

1、创建数据表

CREATE TABLE ccs_image (

 id int(4) unsigned NOT NULL auto_increment,

 description varchar(250) default NULL,

 bin_data longblob,

 filename varchar(50) default NULL,

 filesize varchar(50) default NULL,

 filetype varchar(50) default NULL,

 PRIMARY KEY (id)

)engine=myisam DEFAULT charset=utf8

2、用于上传图片到服务器的页面 upimage.html

<!doctype html>

<html>

<head>

  <meta charset="UTF-8">

  <meta name="viewport"

     content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">

  <meta http-equiv="X-UA-Compatible" content="ie=edge">

  <style type="text/css">

    *{margin: 1%}

  </style>

  <title>Document</title>

</head>

<body>

<form method="post" action="upimage.php" enctype="multipart/form-data">

  描述:

  <input type="text" name="form_description" size="40">

  <input type="hidden" name="MAX_FILE_SIZE" value="1000000"> <br>

  上传文件到数据库:

  <input type="file" name="form_data" size="40"><br>

  <input type="submit" name="submit" value="submit">

</form>

</body>

</html>

3、处理图片上传的php upimage.php

<?php

if (isset($_POST['submit'])) {

  $form_description = $_POST['form_description'];

  $form_data_name = $_FILES['form_data']['name'];

  $form_data_size = $_FILES['form_data']['size'];

  $form_data_type = $_FILES['form_data']['type'];

  $form_data = $_FILES['form_data']['tmp_name'];

   

  $dsn = 'mysql:dbname=test;host=localhost';

  $pdo = new PDO($dsn, 'root', 'root');

  $data = addslashes(fread(fopen($form_data, "r"), filesize($form_data)));

  //echo "mysqlPicture=".$data;

   

  $result = $pdo->query("INSERT INTO ccs_image (description,bin_data,filename,filesize,filetype)

         VALUES ('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')");

  if ($result) {

    echo "图片已存储到数据库";

  } else {

    echo "请求失败,请重试";

注:图片是以二进制blob形式存进数据库的,像这样

4、显示图片的php getimage.php

<?php

 

  $id =2;// $_GET['id']; 为简洁,直接将id写上了,正常应该是通过用户填入的id获取的

  $dsn ='mysql:dbname=test;host=localhost';

  $pdo = new PDO($dsn,'root','root');

  $query = "select bin_data,filetype from ccs_image where id=2";

  $result = $pdo->query($query);

  $result = $result->fetchAll(2);

//  var_dump($result);

  $data = $result[0]['bin_data'];

  $type = $result[0]['filetype'];

  Header( "Content-type: $type");

  echo $data;

5、到浏览器查看已经上传的图片,看是否可以显示

PHP上传图片到数据库并显示的实例代码

以上就是本次介绍的全部相关知识点,感谢大家的学习和对三水点靠木的支持。

PHP 相关文章推荐
php 修改zen-cart下单和付款流程以防止漏单
Mar 08 PHP
php的array_multisort()使用方法介绍
May 16 PHP
php 邮件发送问题解决
Mar 22 PHP
ThinkPHP令牌验证实例
Jun 18 PHP
PHP生成网站桌面快捷方式代码分享
Oct 11 PHP
PHP缓存集成库phpFastCache用法
Dec 15 PHP
php实现检查文章是否被百度收录
Jan 27 PHP
PHP常见数组函数用法小结
Mar 21 PHP
PHP 实现字符串翻转(包含中文汉字)的实现代码
Apr 01 PHP
PHP实现的登录页面信息提示功能示例
Jul 24 PHP
php7新特性的理解和比较总结
Apr 14 PHP
PHP unset函数原理及使用方法解析
Aug 14 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
Dec 18 #PHP
Laravel jwt 多表(多用户端)验证隔离的实现
Dec 18 #PHP
PHP中用Trait封装单例模式的实现
Dec 18 #PHP
PHP实现微信公众号验证Token的示例代码
Dec 16 #PHP
浅析PHP中的 inet_pton 网络函数
Dec 16 #PHP
Laravel等框架模型关联的可用性浅析
Dec 15 #PHP
php获取是星期几的的一些常用姿势
Dec 15 #PHP
You might like
php下载远程文件类(支持断点续传)
2008/11/14 PHP
PHP 日期加减的类,很不错
2009/10/10 PHP
PHP遍历二维数组的代码
2011/04/22 PHP
php GUID生成函数和类
2014/03/10 PHP
PHP数组函数array_multisort()用法实例分析
2016/04/02 PHP
php 生成Tab键或逗号分隔的CSV
2016/09/24 PHP
PHP环境搭建(php+Apache+mysql)
2016/11/14 PHP
jquery.Jwin.js 基于jquery的弹出层插件代码
2012/05/23 Javascript
javascript 中Cookie读、写与删除操作
2017/03/29 Javascript
webpack4 SCSS提取和懒加载的示例
2018/09/03 Javascript
深入理解NodeJS 多进程和集群
2018/10/17 NodeJs
js实现搜索栏效果
2018/11/16 Javascript
2019 年编写现代 JavaScript 代码的5个小技巧(小结)
2019/01/15 Javascript
Vue中使用canvas方法总结
2019/02/12 Javascript
ES10 特性的完整指南小结
2019/03/04 Javascript
Node 代理访问的实现
2019/09/19 Javascript
vue项目页面嵌入代码块vue-prism-editor的实现
2020/10/30 Javascript
[49:31]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS BO3 第二场 1月29日
2021/03/11 DOTA
python条件和循环的使用方法
2013/11/01 Python
Python模块结构与布局操作方法实例分析
2017/07/24 Python
pycharm打开命令行或Terminal的方法
2019/01/16 Python
Python lxml模块的基本使用方法分析
2019/12/21 Python
浅谈tensorflow模型保存为pb的各种姿势
2020/05/25 Python
Python使用configparser读取ini配置文件
2020/05/25 Python
Python-opencv实现红绿两色识别操作
2020/06/04 Python
用python发送微信消息
2020/12/21 Python
css3让div随鼠标移动而抖动起来
2014/02/10 HTML / CSS
购买瑞典当代设计的腕表和太阳眼镜:TRIWA
2016/10/30 全球购物
澳大利亚相机之家:Camera House
2017/11/30 全球购物
马来西亚在线健康商店:Medipal Malaysia
2020/04/13 全球购物
个人银行贷款担保书
2014/04/01 职场文书
2014高中生入党思想汇报范文
2014/09/13 职场文书
领导干部个人对照检查材料(群众路线)
2014/09/26 职场文书
财产保全担保书
2015/01/20 职场文书
三方协议书
2015/01/27 职场文书
Python识别花卉种类鉴定网络热门植物并自动整理分类
2022/04/08 Python