Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][SQLite] jak wpisać dane binarne do bazy
Forum PHP.pl > Forum > Przedszkole
madrazel
(chodzi o malutkie gify, czy png, tysiące, tysiące obrazków)

wiem że można użyć coś takiego jak base64_encode ale wtedy baza zwiększa swoją objętość, a jak są dane binarne to zawsze mogą wystąpić tam takie znaki jak \ lub podobne niedozwolone

gdzieś widziałem taki trick że dane były wpisywane do sqlite (za pomocą PDO), nie nie wiem czy w php, polegało to na tym że dane te były wpisywane osobno jako parametry funkcji query w taki sposób że nie trzeba było uważać na żadne znaki w jakoś taki sposób

$pdo->query("INSERT INTO table (id,content,time) VALUES($id , %1% , $time)", $content); - no zmyślam ale jakoś tak to było
erix
http://devzone.zend.com/article/760
madrazel
znalazłem coś ciekawego na ten temat:

  1. $pdo = new PDO('sqlite:database.db3');
  2. $pdo->query("CREATE TABLE my_table ( id INTEGER PRIMARY KEY ON CONFLICT REPLACE, content BLOB, timestamp INTEGER)");
  3. $stmt = $pdo->prepare('INSERT INTO `my_table` (`id`, `content`, `timestamp`) VALUES( :id, :content, :timestamp)');
  4.  
  5. $stmt -> bindValue(':id', $id, PDO::PARAM_INT);
  6. $stmt -> bindValue(':content', $content, PDO::PARAM_LOB);
  7. $stmt -> bindValue(':timestamp', time(), PDO::PARAM_INT);
  8. $stmt->execute();


uff.. wreszcie udało mi się ładnie wkleić jakiś kod
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.