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 相关文章推荐
一个用于MySQL的PHP XML类
Oct 09 PHP
工厂模式在Zend Framework中应用介绍
Jul 10 PHP
PHP下使用CURL方式POST数据至API接口的代码
Feb 14 PHP
php中flush()、ob_flush()、ob_end_flush()的区别介绍
Feb 17 PHP
hadoop中一些常用的命令介绍
Jun 19 PHP
利用php下载xls文件(自己动手写的)
Apr 18 PHP
PHP定时更新程序设计思路分享
Jun 10 PHP
php集成环境xampp中apache无法启动问题解决方案
Nov 18 PHP
PHP的Yii框架的常用日志操作总结
Dec 08 PHP
两种php实现图片上传的方法
Jan 22 PHP
Zend Framework创建自己的动作助手详解
Mar 05 PHP
PHP编写文件多服务器同步程序
Jul 02 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
MySQL授权问题总结
2007/05/06 PHP
PHP生成Gif图片验证码
2013/10/27 PHP
新浪SAE搭建PHP项目教程
2015/01/28 PHP
PHP简单获取视频预览图的方法
2015/03/12 PHP
php将日期格式转换成xx天前的格式
2015/04/16 PHP
PHP使用PDO调用mssql存储过程的方法示例
2017/10/07 PHP
Yii框架引入coreseek分页功能示例
2019/02/08 PHP
Javascript 陷阱 window全局对象
2008/11/26 Javascript
一个判断email合法性的函数[非正则]
2008/12/09 Javascript
Whatever:hover 无需javascript让IE支持丰富伪类
2010/06/29 Javascript
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
js原生appendChild的bug解决心得分享
2013/07/01 Javascript
jquery在项目中做复选框时遇到的一些问题笔记
2013/11/17 Javascript
JS实现动态移动层及拖动浮层关闭的方法
2015/04/30 Javascript
js+HTML5基于过滤器从摄像头中捕获视频的方法
2015/06/16 Javascript
Javascript 实现全屏滚动实例代码
2016/12/31 Javascript
基于JavaScript定位当前的地理位置
2017/04/11 Javascript
Node.js中的http请求客户端示例(request client)
2017/05/04 Javascript
基于nodejs 的多页面爬虫实例代码
2017/05/31 NodeJs
修改 bootstrap table 默认detailRow样式的实例代码
2017/07/21 Javascript
关于Vue的路由权限管理的示例代码
2018/03/06 Javascript
微信小程序canvas实现刮刮乐效果
2018/07/09 Javascript
vue实现自定义日期组件功能的实例代码
2018/11/06 Javascript
vue实现节点增删改功能
2019/09/26 Javascript
浅谈javascript如何获取文件后缀名
2020/08/07 Javascript
Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程
2018/01/04 Python
matplotlib部件之套索Lasso的使用
2021/02/24 Python
eDreams加拿大:廉价航班、酒店和度假
2019/03/29 全球购物
香港网上花店:FlowerAdvisor香港
2019/05/30 全球购物
加拿大户外探险购物网站:SAIL
2020/06/27 全球购物
深圳-东方伟业笔试部分
2015/02/11 面试题
校园达人秀策划书
2014/01/12 职场文书
2015年财政所工作总结
2015/04/25 职场文书
2015年暑假生活总结
2015/07/13 职场文书
2015年公司中秋节致辞
2015/07/31 职场文书
Mysql 设置boolean类型的操作
2021/06/04 MySQL