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 相关文章推荐
给多个地址发邮件的类
Oct 09 PHP
Blitz templates 最快的PHP模板引擎
Apr 06 PHP
PHP 时间日期操作实战
Aug 26 PHP
php中使用PHPExcel读写excel(xls)文件的方法
Sep 15 PHP
如何让CI框架支持service层
Oct 29 PHP
php实现判断访问来路是否为搜索引擎机器人的方法
Apr 15 PHP
PHP中的数组处理函数实例总结
Jan 09 PHP
php好代码风格的阶段性总结
Jun 25 PHP
PHP实现的观察者模式实例
Jun 21 PHP
PHP实现时间比较和时间差计算的方法示例
Jul 24 PHP
PHP实现动态删除XML数据的方法示例
Mar 30 PHP
Yii2框架中一些折磨人的坑
Dec 15 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自定义函数返回多个值
2006/11/26 PHP
使用VisualStudio开发php的图文设置方法
2010/08/21 PHP
PHP彩蛋信息介绍和阻止泄漏的方法(隐藏功能)
2014/08/06 PHP
PHP扩展模块memcached长连接使用方法分析
2014/12/24 PHP
PHP Callable强制指定回调类型的方法
2016/08/30 PHP
浅析PHP开发规范
2018/02/05 PHP
PHP实现笛卡尔积算法的实例讲解
2019/12/22 PHP
JavaScript 学习笔记(十四) 正则表达式
2010/01/22 Javascript
js动态创建表格,删除行列的小例子
2013/07/20 Javascript
如何通过javascript操作web控件的自定义属性
2013/11/25 Javascript
jQuery实现淡入淡出二级下拉导航菜单的方法
2015/08/28 Javascript
全面解析Bootstrap表单使用方法(表单按钮)
2015/11/24 Javascript
jQuery Timelinr实现垂直水平时间轴插件(附源码下载)
2016/02/16 Javascript
基于Javascript实现倒计时功能
2016/02/22 Javascript
一起学写js Calender日历控件
2016/04/14 Javascript
jQuery基于json与cookie实现购物车的方法
2016/04/15 Javascript
jQuery自定义图片缩放拖拽插件imageQ实现方法(附demo源码下载)
2016/05/27 Javascript
Web安全测试之XSS实例讲解
2016/08/15 Javascript
完美解决IE不支持Data.parse()的问题
2016/11/24 Javascript
微信小程序 出现错误:{&quot;baseresponse&quot;:{&quot;errcode&quot;:-80002,&quot;errmsg&quot;:&quot;&quot;}}解决办法
2017/02/23 Javascript
jQuery插件FusionCharts绘制的3D双柱状图效果示例【附demo源码】
2017/04/20 jQuery
微信小程序使用 vant Dialog组件的正确方式
2020/02/21 Javascript
JavaScript实现简单验证码
2020/08/24 Javascript
[31:00]2014 DOTA2华西杯精英邀请赛5 24 NewBee VS iG
2014/05/25 DOTA
python微信跳一跳系列之棋子定位颜色识别
2018/02/26 Python
基于windows下pip安装python模块时报错总结
2018/06/12 Python
对python3标准库httpclient的使用详解
2018/12/18 Python
flask 实现上传图片并缩放作为头像的例子
2020/01/09 Python
马来西亚时装购物网站:ZALORA马来西亚
2017/03/14 全球购物
联想马亚西亚官方网站:Lenovo Malaysia
2018/09/19 全球购物
优秀团员主要事迹范文
2015/11/05 职场文书
2016中秋晚会开幕词
2016/03/03 职场文书
销售会议开幕词
2016/03/04 职场文书
解决pytorch-gpu 安装失败的记录
2021/05/24 Python
Spring Data JPA框架自定义Repository接口
2022/04/28 Java/Android
使用Python开发冰球小游戏
2022/04/30 Python