一定要存图片入库吗?可不可以试试存图片的名字入库而已呢!或者名字的一些特征,
如1,2,3,4,····
读数据后形成图片的名字1.gif

解决方案 »

  1.   

    <?php
    // 作者:phpteam
    // create table test (
    // id int(11) not null  自动增加
    // filename varchar(50) not null,
    // picture text or blob
    // )$filename = "test.jpg";
    $fp = fopen($filename,"rb");
    $picture = fread($fp,filesize($filename));
    $picture = base64_encode($picture);
    fclose($fp);// MYSQL的例子
    $conn=mysql_connect("localhost","root","");
    @mysql_select_db("test",$conn);
    $query="insert into test (filename,picture) values ('$filename','$picture')";
    $result=mysql_query($query);
    $id=mysql_insert_id();
    $query="select * from test where id='$id'";
    $result=mysql_query($query);
    $row=mysql_fetch_array($result);
    // 通过ODBC操作的例子
    $conn = odbc_connect("test","test","test");
    $query = "INSERT INTO test (filename,picture) VALUES ('$filename','$picture')";
    $result = odbc_exec($conn, $query);
    $query="select @@IDENTITY as id";
    $result = odbc_exec($conn, $query);
    $id = @odbc_result($result, "id");
    // 这段为读取内容
    $query = "SELECT picture FROM test WHERE id='$id'";
    $result = odbc_exec($conn, $query);
    $picture = odbc_result($result, "picture");// 通过MSSQL操作的例子
    $conn = mssql_connect("localhost","sa","");
    @mssql_select_db("test",$conn);
    // 这段为插入到MSSQL数据库
    $query = "INSERT INTO test (filename,picture) VALUES ('$filename','$picture')";
    $result = mssql_query($query);
    $query="select @@IDENTITY as id";
    $result = mssql_query($query);
    $id = @mssql_result($result,0,"id");
    // 这段为读取内容
    $query = "SELECT * FROM test WHERE id='$id'";
    $result = mssql_query($query);
    $row = mssql_fetch_array($result);
    $data = base64_decode($row[picture]);// 以下为输出到文件
    //$fp = fopen($newfile,"wb");
    //fwrite($fp,$data);
    //fclose($fp);header("Content-type: image/jpeg");
    echo $data;
    ?>
      

  2.   

    有从mysql中将图片直接读出来的例子程序吗?
      

  3.   

    在精华区里有一文。值得一看,不过是英文的。还有一点小错误,下面这句
    $mysqlPicture = addslashes(fread(fopen($Picture, "r"), $PSize));
    中的“r”改成"rb"