PHP ist das abschneiden MSSQL Blob-Daten (4096b), auch nach Einstellung der INI-Werte. Übersehe ich eine?

Ich Schreibe ein PHP script, das geht durch eine Tabelle und extrahiert die varbinary(max) blob-Daten aus jedem Datensatz in einer externen Datei. Der code funktioniert perfekt (ich habe praktisch den gleichen code zu gehen durch einige Bilder), außer wenn Sie eine Datei über 4096b - die Daten werden abgeschnitten, genau 4096.

Habe ich geändert, die Werte für mssql.textlimit, mssql.textsize, und odbc.defaultlrl ohne Erfolg.

Bin ich hier etwas fehlt?

<?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>");
     }
 } 
?>

AUSGABE

Versucht ... projectPhotos/docs/Datei1.pdf
Fertig (4096)

Versucht ... projectPhotos/docs/file2.zip Fertig (4096)

Versucht ...
projectPhotos/docsv3.pdf Gemacht (4096)

etc..

InformationsquelleAutor Dutchie432 | 2010-12-21

Schreibe einen Kommentar