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 相关文章推荐
PHPWind 发帖回帖Api PHP版打包下载
Feb 08 PHP
PHP技术开发技巧分享
Mar 23 PHP
php站内搜索并高亮显示关键字的实现代码
Dec 29 PHP
php中并发读写文件冲突的解决方案
Oct 25 PHP
PHP base64编码后解码乱码的解决办法
Jun 19 PHP
Yii框架登录流程分析
Dec 03 PHP
PHP数组操作类实例
Jul 11 PHP
php根据日期显示所在星座的方法
Jul 13 PHP
php pdo oracle中文乱码的快速解决方法
May 16 PHP
简单解析PHP程序的运行流程
Jun 23 PHP
完美解决phpexcel导出到xls文件出现乱码的问题
Oct 29 PHP
laravel自定义分页效果
Jul 23 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
德劲1103二次变频版的打磨
2021/03/02 无线电
PHP has encountered an Access Violation
2007/01/15 PHP
php 将excel导入mysql
2009/11/09 PHP
javascript得到XML某节点的子节点个数的脚本
2008/10/11 Javascript
Javascript学习笔记8 用JSON做原型
2010/01/11 Javascript
使用JavaScript判断图片是否加载完成的三种实现方式
2014/05/04 Javascript
JS实现清除指定cookies的方法
2014/09/20 Javascript
Javascript优化技巧之短路表达式详细介绍
2015/03/27 Javascript
JS中的eval 为什么加括号
2016/04/13 Javascript
JS扩展类,克隆对象与混合类实例分析
2016/11/26 Javascript
JavaScript常用正则函数用法示例
2017/01/23 Javascript
Vue 2.0 中依赖注入 provide/inject组合实战
2019/06/20 Javascript
[50:59]2018DOTA2亚洲邀请赛 4.7 总决赛 LGD vs Mineski第四场
2018/04/10 DOTA
Python Web服务器Tornado使用小结
2014/05/06 Python
Python 使用type来定义类的实现
2019/11/19 Python
Python3爬虫里关于Splash负载均衡配置详解
2020/07/10 Python
如何一键升级Python所有包
2020/11/05 Python
python中altair可视化库实例用法
2021/01/26 Python
matplotlib之pyplot模块之标题(title()和suptitle())
2021/02/22 Python
CSS3 新增选择器的实例
2019/11/13 HTML / CSS
如何查看浏览器对html5的支持情况
2020/12/15 HTML / CSS
自我评价中英文语句
2013/11/30 职场文书
毕业生就业推荐信范文
2013/12/01 职场文书
农村婚礼证婚词
2014/01/08 职场文书
学习教师法的心得体会
2014/09/03 职场文书
领导班子民主生活会整改措施(工商局)
2014/09/21 职场文书
单位租车协议书
2015/01/29 职场文书
五四青年节活动总结
2015/02/10 职场文书
《莫泊桑拜师》教学反思
2016/02/22 职场文书
Django实现聊天机器人
2021/05/31 Python
MySQL中的布尔值,怎么存储false或true
2021/06/04 MySQL
Pytest中conftest.py的用法
2021/06/27 Python
详解解Django 多对多表关系的三种创建方式
2021/08/23 Python
Nginx 配置 HTTPS的详细过程
2022/05/30 Servers
GoFrame框架数据校验之校验结果Error接口对象
2022/06/21 Golang
zabbix如何添加监控主机和自定义监控项
2022/08/14 Servers