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 图片上传实现代码 带详细注释
Apr 29 PHP
php下安装配置fckeditor编辑器的方法
Mar 02 PHP
php 求质素(素数) 的实现代码
Apr 12 PHP
深入php list()函数的详解
Jun 05 PHP
php中AES加密解密的例子小结
Feb 18 PHP
php短址转换实现方法
Feb 25 PHP
php eval函数一句话木马代码
May 21 PHP
PHP利用imagick生成组合缩略图
Feb 19 PHP
PHP中模糊查询并关联三个select框
Jun 19 PHP
PHP多线程模拟实现秒杀抢单
Feb 07 PHP
PHP asXML()函数讲解
Feb 03 PHP
PHP中md5()函数的用法讲解
Mar 30 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 GUID生成函数和类
2014/03/10 PHP
php计算两个日期时间差(返回年、月、日)
2014/06/19 PHP
用PHP解决的一个栈的面试题
2014/07/02 PHP
php邮件发送的两种方式
2020/04/28 PHP
php实现支付宝当面付(扫码支付)功能
2018/05/30 PHP
七种PHP开发环境搭建工具
2020/06/28 PHP
基于jquery的一行代码轻松实现拖动效果
2010/12/28 Javascript
javascript之querySelector和querySelectorAll使用说明
2011/10/09 Javascript
jquery属性过滤选择器使用示例
2013/06/18 Javascript
input标签内容改变的触发事件介绍
2014/06/18 Javascript
jquery代码实现多选、不同分享功能
2015/07/31 Javascript
JavaScript实现跨浏览器的添加及删除事件绑定函数实例
2015/08/04 Javascript
JS 实现随机验证码功能
2017/02/15 Javascript
vue组件初学_弹射小球(实例讲解)
2017/09/06 Javascript
JavaScript寄生组合式继承实例详解
2018/01/06 Javascript
vue.js计算属性computed用法实例分析
2018/07/06 Javascript
vue中使用cookies和crypto-js实现记住密码和加密的方法
2018/10/18 Javascript
微信小程序实现页面浮动导航
2020/01/08 Javascript
python中黄金分割法实现方法
2015/05/06 Python
python+numpy+matplotalib实现梯度下降法
2018/08/31 Python
Python3.5 处理文本txt,删除不需要的行方法
2018/12/10 Python
在Qt中正确的设置窗体的背景图片的几种方法总结
2019/06/19 Python
flask框架单元测试原理与用法实例分析
2019/07/23 Python
python图形开发GUI库pyqt5的详细使用方法及各控件的属性与方法
2020/02/14 Python
python实现处理mysql结果输出方式
2020/04/09 Python
Python如何实现后端自定义认证并实现多条件登陆
2020/06/22 Python
在django中实现choices字段获取对应字段值
2020/07/12 Python
vscode调试django项目的方法
2020/08/06 Python
建筑工程管理专业自荐信范文
2013/12/28 职场文书
实习生岗位职责
2014/04/12 职场文书
大气污染防治方案
2014/05/19 职场文书
社区母亲节活动总结
2015/02/10 职场文书
2015年社区平安建设工作总结
2015/05/13 职场文书
2015年高三年级组工作总结
2015/07/21 职场文书
2016医师资格考试考生诚信考试承诺书
2016/03/25 职场文书
浅谈MySQL之浅入深出页原理
2021/06/23 MySQL