上传图片保存到MySql数据库并显示--经验证有效
以下方法仅供参考,只是介绍下这一种方法而已。欢迎指正!!
<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):
<?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
else24
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):
<?php2
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
?>上传图片保存到MySql数据库并显示--经验证有效的更多相关文章
- php将图片以二进制保存到mysql数据库并显示
一.存储图片的数据表结构: -- -- 表的结构 `image` -- CREATE TABLE IF NOT EXISTS `image` ( `id` int(3) NOT NULL AUTO_I ...
- Python scrapy爬虫数据保存到MySQL数据库
除将爬取到的信息写入文件中之外,程序也可通过修改 Pipeline 文件将数据保存到数据库中.为了使用数据库来保存爬取到的信息,在 MySQL 的 python 数据库中执行如下 SQL 语句来创建 ...
- node 爬虫 --- 将爬取到的数据,保存到 mysql 数据库中
步骤一:安装必要模块 (1)cheerio模块 ,一个类似jQuery的选择器模块,分析HTML利器. (2)request模块,让http请求变的更加简单 (3)mysql模块,node连接mysq ...
- Python实现将图片以二进制格式保存到MySQL数据库中,以及取出:
创建数据库表格式: CREATE TABLE photo ( photo_no int(6) unsigned NOT NULL auto_increment, image MEDIUMBLOB, P ...
- 使用官方组件下载图片,保存到MySQL数据库,保存到MongoDB数据库
需要学习的地方,使用官方组件下载图片的用法,保存item到MySQL数据库 需要提前创建好MySQL数据库,根据item.py文件中的字段信息创建相应的数据表 1.items.py文件 from sc ...
- 利用session_set_save_handler()函数将session保存到MySQL数据库中
PHP保存session默认的是采用的文件的方式来保存的,这仅仅在文件的空间开销很小的windows上是可以采用的,但是如果我们采用uinx或者是liux上的文件系统的时候,这样的文件系统的文件空间开 ...
- 信息技术手册可视化进度报告 基于BeautifulSoup框架的python3爬取数据并连接保存到MySQL数据库
老师给我们提供了一个word文档,里面是一份信息行业热词解释手册,要求我们把里面的文字存进数据库里面,然后在前台展示出来. 首先面临的问题是怎么把数据导进MySQL数据库,大家都有自己的方法,我采用了 ...
- 关于阿里云centos 2.6下手机表情输入后无法保存到mysql数据库的问题调研及mysql版本从5.1升级到5.7的全过程纪要
近日在开发手机app的评论功能时,输入表情文字,保存后提示数据库保存失败.错误日志片段如下 caused by: java.sql.SQLException: Incorrect string val ...
- python之scrapy爬取数据保存到mysql数据库
1.创建工程 scrapy startproject tencent 2.创建项目 scrapy genspider mahuateng 3.既然保存到数据库,自然要安装pymsql pip inst ...
随机推荐
- Kth Minimum Clique
Kth Minimum Clique 题目描述 Given a vertex-weighted graph with N vertices, find out the K-th minimum wei ...
- TP5.1 分页CSS样式(转载)
效果如图: 1.在extend\目录下创建page目录,在page目录中创建Page.php文件,将以下代码放入文件中 <?php namespace page; use think\Pagin ...
- 关于Layui 响应式移动端轮播图的问题
用layui做轮播图,在手机上宽度异常, 可通过以下方法解决, 不喜欢layui的同学可以选择Swiper // 轮播图 layui.use('carousel', function () { var ...
- Js Array 删除
数组删除操作 Array.prototype.inArray = function (e) {for (i = 0; i < this.length; i++) {if (this[i] == ...
- 关于本地文件请求json文件
因为需要用到json数据格式,上网查了一下例子之后我就想本地测试一下看能不能成功. 结果,chrome下没有任何反应,打开控制台之后报错如下: XMLHttpRequest cannot load f ...
- python 中if __name__=="__main__"
if __name__=="__main__":表示当执行运行文件为当前代码所在文件时,则会执行if__name__=="__main__":后的语句. 如果这 ...
- 生成mysql数据字典
data_dictionary.php <?php /** * 生成mysql数据字典 */ header("Content-type: text/html; charset=utf- ...
- 【水滴石穿】react-native-book
先推荐一个学习的地址:https://ke.qq.com/webcourse/index.html#cid=203313&term_id=100240778&taid=12778558 ...
- No.4 Verilog 表达式
4-1 操作数 常数.参数.线网.变量.位选.存储器.数组. *部分位选: integer mark; :] inst; :] gpio; inst[mark+ : ] //选择 mark,mark+ ...
- 从url输入网址后发生什么
从url输入网址后发生什么