Jak zapisać BLOB do bazy MSSQL

[How to insert BLOB data into MSSQL using PHP]

Naszukałem się pół dnia jak to zrobić, więc postanowiłem się podzielić, gdyż się udało 🙂

A chodzi o zapisanie obrazka jpg w postaci binarnej do bazy mssql używając php:

  • odczytujemy zawartość jpg (można file_get_content albo jakąś fajną biblioteką do obróbki zdjęć, np. WideImage) jako $content,
  • robimy mały szacher macher: $content = unpack(„H*hex”, $content);
  • robimy zapytanie:
  • $sql = "UPDATE tabela SET zawartosc_zdjecia = 0x".$content['hex']." WHERE id_zdjecia = $id";

    1 thought on “Jak zapisać BLOB do bazy MSSQL

    1. 1. Brak informacji o rozszerzeniu pliku
      2. Brak informacji o rozmiarze pliku
      3. Brak informacji o nazwie pliku
      4. Za dużo kombinowania

      $data = file_get_contents($_FILES[‚typ’][‚nazwa’]);
      $data = mysql_real_escape_string($data);

      mysql_query(„INSERT INTO {$table} SET ext=’$ext’, title=’$title’, data=’$data'”);

      Z funkcji $_FILE odczytasz jeszcze nazwę + rozszerzenie + rozmiar i dodasz do funkcji insert.

    Comments are closed.