Firebird/InterBase 函数
在线手册:中文 英文
PHP手册

ibase_blob_import

(PHP 4, PHP 5)

ibase_blob_importCreate blob, copy file in it, and close it

说明

string ibase_blob_import ( resource $link_identifier , resource $file_handle )
string ibase_blob_import ( resource $file_handle )

This function creates a BLOB, reads an entire file into it, closes it and returns the assigned BLOB id.

参数

link_identifier

An InterBase link identifier. If omitted, the last opened link is assumed.

file_handle

The file handle is a handle returned by fopen().

返回值

Returns the BLOB id on success, or FALSE on error.

范例

Example #1 ibase_blob_import() example

<?php
$dbh 
ibase_connect($host$username$password);
$filename '/tmp/bar';

$fd fopen($filename'r');
if (
$fd) {

    
$blob ibase_blob_import($dbh$fd);
    
fclose($fd);

    if (!
is_string($blob)) {
        
// import failed
    
} else {
        
$query "INSERT INTO foo (name, data) VALUES ('$filename', ?)";
        
$prepared ibase_prepare($dbh$query);
        if (!
ibase_execute($prepared$blob)) {
            
// record insertion failed
        
}
    }
} else {
    
// unable to open the data file
}
?>

参见


Firebird/InterBase 函数
在线手册:中文 英文
PHP手册
PHP手册 - N: Create blob, copy file in it, and close it

用户评论:

hamacker at bol dot com dot br (19-Jan-2004 04:40)

Exemplo (Example) :
  $conexao = ibase_connect('servidor:/path/do/arquivo/de/dados.fdb',
                    'SYSDBA',
                    'masterkey',
                    'ISO8859_1',0,3);
// ou voce pega o arqivo via um upload ou
// passara diretamente o path do .jpg
//  $filename =$HTTP_POST_FILES['meuarquivo']['tmp_name'];
// ou
  $filename ='c:\path\do\arquivo.jpg';
  $file = fopen($filename, "r");
  $blob = ibase_blob_import($file);
  $trans=ibase_trans();
  $sth=ibase_prepare($conexao,"UPDATE PRODUTOS SET fotografia=? WHERE coditem= '{$coditem}';");
  $trans=ibase_trans();
  ibase_execute($sth,$blob);
  ibase_commit($trans);
  ibase_free_query($sth);