在Mysql中直接储存图片(转)

在Mysql中直接储存图片(转)[@more@]如果你想把二进制的数据,比如说图片文件和HTML文件,直接保存在你的MySQL数据库,那么这篇文章就是为你而写的!我将告诉你怎样通过HTML表单来储存这些文件,怎样访问和使用这些文件。 本文概述: 在mysql中建立一个新的数据库 一个怎样储存文件的例子程序 一个怎样访问文件的例子程序 在mysql中建立一个新的database 首先,你必须在你的mysql中建立一个新的数据库,我们将会把那些二进制文件储存在这个数据库里。在例子中我会使用下列结构,为了建立数据库,你必须做下列步骤: 进入MySql控制器 输入命令"create database binary_data;" 输入命令"use binary_data;" 输入命令"CREATE TABLE binary_data ( id INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY, description CHAR(50), bin_data LONGBLOB, filename CHAR(50), filesize CHAR(50), filetype CHAR(50));" (不能断行) 如果没有意外,数据库 和 表 应该建立好了。 一个怎样储存文件的例子程序 用这个例子你可以通过Html表单将文件传输到数据库中。. store.php3 dittmer@gmx.net> ?>
QUOTE:

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10617542/viewspace-944394/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10617542/viewspace-944394/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL ,可以使用 BLOB 类型来存储二进制数据,包括图片。 以下是将图片存储到 MySQL 的步骤: 1. 创建一个表来存储图片,示例代码如下: ``` CREATE TABLE images ( id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30) NOT NULL, image MEDIUMBLOB ); ``` 2. 在应用程序,读取图片并将其换为二进制数据。 例如,以下代码使用 PHP 读取图片并将其存储到 MySQL : ```php // 获取图片二进制数据 $imageData = file_get_contents('path/to/image.jpg'); // 连接数据库 $conn = mysqli_connect('localhost', 'username', 'password', 'database'); // 准备 SQL 语句 $sql = "INSERT INTO images (name, image) VALUES (?, ?)"; // 创建预处理语句 $stmt = mysqli_prepare($conn, $sql); // 绑定参数 mysqli_stmt_bind_param($stmt, "sb", $imageName, $imageData); // 执行预处理语句 mysqli_stmt_execute($stmt); // 关闭预处理语句和数据库连接 mysqli_stmt_close($stmt); mysqli_close($conn); ``` 3. 当需要显示图片时,从数据库读取二进制数据并将其换为图像。例如,以下 PHP 代码从数据库读取图片并在浏览器显示: ```php // 连接数据库 $conn = mysqli_connect('localhost', 'username', 'password', 'database'); // 准备 SQL 语句 $sql = "SELECT image FROM images WHERE id = ?"; // 创建预处理语句 $stmt = mysqli_prepare($conn, $sql); // 绑定参数 mysqli_stmt_bind_param($stmt, "i", $imageId); // 执行预处理语句 mysqli_stmt_execute($stmt); // 绑定结果 mysqli_stmt_bind_result($stmt, $imageData); // 读取结果 mysqli_stmt_fetch($stmt); // 输出图像 header("Content-type: image/jpeg"); echo $imageData; // 关闭预处理语句和数据库连接 mysqli_stmt_close($stmt); mysqli_close($conn); ``` 注意:在实际应用,需要确保图片数据的安全性和完整性,例如验证上传的图片类型、大小和文件名,以及使用 HTTPS 协议传输图片数据等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值