深圳升蓝软件
数据库开发 .Net技术  |  ASP技术 PHP技术 JSP技术 应用技术类   
Hiblue Software

MYSQL中如何存取二进制文件


March 25,2004
如何存取二进制文件,用以下代码说明

首先创建测试表testtable
CREATE TABLE testtable ( id INT(5) NOT NULL AUTO_INCREMENT PRIMARY KEY,filename CHAR(255),data LONGBLOB );

将文件存入表中
<?php
  mysql_connect( "localhost", "root", "password"); //连接数据库
  mysql_select_db( "database"); //选定数据库
  $filename="" //这里填入二进制文件名
  $data = addslashes(fread(fopen($filename, "r"), filesize($filename)));//打开文件并规范化数据存入变量$data中

  $result=mysql_query( "INSERT INTO testtable (filename,data) VALUES ('$filename','$data')");//数据插入到数据库test表中

  mysql_close();
?>

从表中取回文件
<?php


if($id) {

  mysql_connect( "localhost", "root", "password");

  mysql_select_db( "database");
  $filename="" //这里填入二进制文件名

  $query = "select data from testtable where filename=$filename";
  $result = mysql_query($query);

  $data = mysql_result($result,0, "data");

?>

这里要注意的是,PHP一般只支持小于2M的文件,如果要存取大于2M的文件,那就要进系统方面的设置了。
       
Copyright © 2001-2008 Shenzhen Hiblue Software Team All rights reserved