![]() |
|
首页 │ Apache │ Linux│ Java│ MySQL│ 注册│帮助 | |||
相关问题
CREATE TABLE PICTURES ( ID NUMBER, DESCRIPTION VARCHAR2(100), MIME VARCHAR2(128), PICTURE BLOB ); CREATE SEQUENCE PIC_SEQ; 整个代码分为四段: Test.html
upload.php $lob_upload = $_FILES['lob_upload']['name']; $conn = OCILogon("name","password","SID"); $lob = OCINewDescriptor($conn, OCI_D_LOB); $stmt = OCIParse($conn,"INSERT INTO PICTURES (id, description,picture) VALUES (pic_seq.NEXTVAL, '$description',EMPTY_BLOB()) RETURNING picture INTO
ICTURE");
OCIBindByName($stmt, '
ICTURE', &$lob, -1, OCI_B_BLOB);
OCIExecute($stmt,OCI_DEFAULT);
if($lob->savefile($lob_upload)){
OCICommit($conn);
echo "上传成功"; }else{ echo "上传失败
"; } //释放LOB对象 OCIFreeDesc($lob); OCIFreeStatement($stmt); OCILogoff($conn); ?> Getimage.php <? $conn = OCILogon("name","password","SID"); $stmt = OCIParse($conn,"SELECT PICTURE FROM PICTURES WHERE ID=$pictureid"); OCIExecute($stmt); //秘密就在PCIFetchInfo的第三个参数上:OCI_RETURN_LOBS。第三个参数是FETCH的模式,如果OCI_RETURN_LOBS,就直接把LOB的值放到结果数组中,而不是LOB定位符,也就不用LOB对象的load()方法了。 if (OCIFetchInto($stmt, $result, OCI_ASSOC+OCI_RETURN_LOBS)) { echo "Content-type: " . StripSlashes($result[MIME]); echo StripSlashes($result[0]); } OCIFreeStatement($stmt); OCILogoff($conn); ?> 111.htm
提问者:eaglesjazz 08-22 12:12
答复

