使用 PHP 在 Oracle 中将图像上传为 BLOB
谁能告诉我如何使用 PHP 将图像作为 BLOB 存储在 Oracle 数据库中?
Can anyone please tell me how to store images in an oracle database as BLOBs using PHP?
一个可行的例子会很好.谢谢.
A working example would be nice. Thankyou.
推荐答案
首先需要从$_FILES
#global数组中获取正在上传的图片:
You first need to get the image that is being uploaded from the $_FILES
#global array:
$image = file_get_contents($_FILES['image_field_name']['tmp_name']);
然后将图像插入数据库试试这个:
Then to insert the image in the database try this:
$sql = "INSERT INTO table (id, image) VALUES(1, empty_blob()) RETURNING image INTO :image";
$result = oci_parse($connection, $sql);
$blob = oci_new_descriptor($connection, OCI_D_LOB);
oci_bind_by_name($result, ":image", $blob, -1, OCI_B_BLOB);
oci_execute($result, OCI_DEFAULT) or die ("Unable to execute query");
if(!$blob->save($image)) {
oci_rollback($connection);
}
else {
oci_commit($connection);
}
oci_free_statement($result);
$blob->free();
相关文章