博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
上传图片保存到MySql数据库并显示--经验证有效
阅读量:6705 次
发布时间:2019-06-25

本文共 1878 字,大约阅读时间需要 6 分钟。

 以下方法仅供参考,只是介绍下这一种方法而已。欢迎指正!!

前台(image.html):
 1<html>
 2<head>
 3<title>上传图片</title>
 4</head>
 5<body>
 6<form method="post" action="upimage.php" enctype="multipart/form-data"><center><br><br><br><br>
 7  <input type="hidden" value="204800" name="MAX_FILE_SIZE"/>
 8  File: <input type="file" name="imgfile" /><br><br>
 9  <input type="submit" value="OK" name="submitbtn" style="width:100px;height:23px"/></center>
10 </form>
11</body>
12</html>
后台处理(upimage.php):
 1<?php 
 2    //向数据库中插入图片
 3    $imgfile=$_FILES['imgfile'];
 4    $submitbtn=$_POST['submitbtn'];
 5    if($submitbtn=='OK' and is_array($imgfile))
 6    {
 7        $name=$imgfile['name'];  //取得图片名称
 8        $type=$imgfile['type']; //取得图片类型
 9        $size=$imgfile['size'];  //取得图片长度
10        $tmpfile=$imgfile['tmp_name'];  //图片上传上来到临时文件的路径
11        if($tmpfile and is_uploaded_file($tmpfile))  //判断上传文件是否为空,文件是不是上传的文件
12        {
13            //读取图片流
14            $file=fopen($tmpfile,"rb");
15            $imgdata=bin2hex(fread($file,$size));  //bin2hex()将二进制数据转换成十六进制表示
16            fclose($file);
17            
18            $mysqli=mysql_connect("localhost","root","123456");  //连接数据库函数
19            mysql_select_db("test");  //选择数据库
20            //插入出数据库语句,图片数据前要加上0x,用于表示16进制数
21            if(mysql_query("insert into images(name,type,image) values('".$name."','".$type."',0x".$imgdata.")"))
22                echo "<center>插入成功!<br><br><a href='disimage.php'>显示图片</a></center>";
23            else
24                echo "<center>插入失败!</center>";
25            mysql_close();
26        }
27        else 
28            echo "<center>请先选择图片!<br><br><a href='image.html'>点此返回</a></center>";
29    }    
30    else 
31        echo "<center>请先选择图片!<br><br><a href='image.html'>点此返回</a></center>";
32?>
显示图片(disimage.php):
 1<?php
 2    mysql_connect("localhost","root","123456");
 3    mysql_select_db("test");
 4    //显示最新插入的那张图片
 5    $result=mysql_query("select image from images where id=(select max(id) from images)");  
 6    $row=mysql_fetch_object($result);
 7    header("Content-Type:image/pjpeg");  
 8    echo $row->image;
 9    mysql_close();
10?>

转载于:https://www.cnblogs.com/wangxiaoy/p/10812845.html

你可能感兴趣的文章
Linux存储管理(3)
查看>>
linux的txt转为windows的txt
查看>>
解决低权限用户的screen Cannot open your terminal '/dev/pts/1'问题
查看>>
美团点评开源 SQL 优化工具 SQLAdvisor 测试报告
查看>>
只用200行Go代码写一个自己的区块链!
查看>>
CentOS6.5环境 安装Keepalived和高可用服务相关参数说明
查看>>
Ansible 二(新手上路)
查看>>
国家级大数据工程研究中心落户京东
查看>>
gitlab 代码控制
查看>>
利用shell脚本“综合、集中”查看linux server常用软硬件信息
查看>>
三种方法部署YUM软件仓库
查看>>
NFS:Linux中最简单且实用的服务
查看>>
Openstack 实战讲解之-----------04-控制节点glance服务安装配置
查看>>
客户端Git的常用命令
查看>>
MongoDB分片副本集搭建
查看>>
ospf中创建末节区域
查看>>
mysql基本参数查询
查看>>
CUDA学习(六十六)
查看>>
是否将信息存储在云?
查看>>
懒癌患者有福了!iOS用户可以在苹果地图和Siri里直接打滴滴
查看>>