php实现sybase读写blob类型。
我的代码如下:
uploadimg.php
<?
$fileUpload_size = $_FILES['file']['size'];
$fileHandle = fopen($file, "r");
$fileContent = fread($fileHandle, $fileUpload_size);
$fileContent = addslashes($fileContent);
$con = sybase_connect("linuxsvr", "sa", "");
sybase_select_db("dsuser",$con);
$sql = "set textsize 655350000 \n";
$sql = "update t1 set pic=NULL where id = 1 \n";
$sql="declare @val varbinary(16) \n";
$sql.="select @val = textptr(pic) from t1 where id=1 \n";
$sql.="writetext t1.pic @val '$fileContent'";
sybase_query($sql,$con);
$sql = "update t1 set size=".($fileUpload_size )." where id = 1";
sybase_query($sql,$con);
?>
viewimg.php
<?
$hostname="linuxsvr";
$username="sa";
$password="";
$link=sybase_connect($hostname,$username,$password) or die("无法连接数据库服务器!");
$db=sybase_select_db("dsuser",$link) or die("无法连接用户数据库—userdb!");
$sql = "select size from t1 where id=1";
$rs=sybase_query($sql) or die("无法执行SQL:$query");
$row = sybase_fetch_array($rs);
$query="set textsize 65530000 \n";
$query ="declare @val varbinary(16) \n";
$query.="select @val=textptr(pic) from t1 where id=1 \n";
$query.="readtext t1.pic @val 1 ".$row[0]."";
$result=sybase_query($query) or die("无法执行SQL:$query");
$arr = sybase_fetch_array($result);
header("Content-type: image/jpeg");
echo $arr["pic"];
?>
问题:
1、现在显示一些二进制代码:该如何显示图片。
2、文件大一些就读不出来了。