ibase_blob_import

(PHP 3 >= 3.0.7, PHP 4, PHP 5)

ibase_blob_import --  Create blob, copy file in it, and close it

Description

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. The file handle is a handle returned by fopen(). Returns FALSE on failure.

例子 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
}
?>

See also ibase_blob_add(), ibase_blob_cancel(), ibase_blob_close() and ibase_blob_create().


add a note add a note User Contributed Notes
hamacker at bol dot com dot br
20-Jan-2004 12: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);