Ben bir tablo geçer ve harici bir dosya içine her kayıttan varbinary(max) blob veri ayıklayan bir PHP komut dosyası yazıyorum. Veri tam 4096 kesildi - kod bir dosya 4096b üzerinde olduğunda dışında (bazı görüntüler geçmesi neredeyse aynı kod kullanılır) mükemmel çalışıyor.
Herhangi bir başarılı olmadan odbc.defaultlrl mssql.textlimit, mssql.textsize değerlerini modifiye ettik.
Ben burada bir şey eksik?
<?php
ini_set("mssql.textlimit" , "2147483647");
ini_set("mssql.textsize" , "2147483647");
ini_set("odbc.defaultlrl", "0");
include_once('common.php'); //Connection to DB takes place here.
$id=$_REQUEST['i'];
$q = odbc_exec($connect, "Select id,filename,documentBin from Projectdocuments where id = $id");
if (odbc_fetch_row($q)){
echo "Trying $filename ... ";
$fileName="projectPhotos/docs/".odbc_result($q,"filename");
if (file_exists($fileName)){
unlink($fileName);
}
if($fh = fopen($fileName, "wb")) {
$binData=odbc_result($q,"documentBin");
fwrite($fh, $binData) ;
fclose($fh);
$size = filesize($fileName);
echo ("$fileName<br />Done ($size)<br><br>");
}else {
echo ("$fileName Failed<br>");
}
}
?>
OUTPUT
Trying ... projectPhotos/docs/file1.pdf Done (4096)
Çalışılıyor ... projectPhotos/docs/file2.zip (4096) Yapıldı
Trying ... projectPhotos/docsv3.pdf Done (4096)
vb.