Advertisement
Guest User

Untitled

a guest
Apr 1st, 2015
222
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.18 KB | None | 0 0
  1. $dbstr = MW_ATTACHES::model()->getDbConnection()->connectionString;
  2.  
  3. preg_match('/\((.+)\)/', $dbstr, $connectionString);
  4. if(!isset($connectionString[0]) || empty($connectionString[0])){
  5.     die('Wrong connection string');
  6. }
  7.  
  8. $conn = oci_new_connect('energy','passdjhl',$connectionString[0]); // @TODO FIX!!!! Remove PASSWORD from here!!!!
  9.  
  10. $stmt = oci_parse($conn, "
  11.         INSERT INTO
  12.             MW_ATTACHES(ID, NAME, TYPE, MAINTENANCE_ID, CONTENT_TYPE, ATTACH)
  13.             VALUES({$next_id}, '{$name}','{$type}', {$mw_id},'{$content_type}', EMPTY_BLOB())
  14.         RETURNING ATTACH INTO :ATTACH
  15.     ");
  16.  
  17. $newlob = oci_new_descriptor($conn, OCI_D_LOB);
  18. oci_bind_by_name($stmt, ":ATTACH", $newlob, -1, OCI_B_BLOB);
  19. oci_execute($stmt, OCI_DEFAULT); //Отмена дефолтного автокоммита после исполнения запроса, потому что при save() LOB локаторы не могут указывать на разные операции ()
  20. $newlob->save($binary_file);               //Сохранение реальных бинарных данных
  21. oci_commit($conn);              //применение транзакции
  22.  
  23. $newlob->free();
  24. oci_free_statement($stmt);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement