مشخصات مقاله
-
1339
-
0.0
-
4218
-
0
-
0
آموزش کار با BLOB در PHP
آموزش BLOB در PHP
می توانیم عکس ها یا دیگر اسناد را در پایگاه داده ذخیره کنیم. برای این که بتوان ذخیره اسناد و عکس را در MYSQL انجام داد، با نوع داده BLOB کار می کنیم. اول، جدولی به نام books می سازیم که دارای یک BLOB است.
CREATE TABLE `books` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(150) NOT NULL,
`author` varchar(150) NOT NULL,
`description` varchar(255) NOT NULL,
`on_sale` tinyint(1) NOT NULL,
`cover` blob NOT NULL,
PRIMARY KEY (`id`)
);
نمونه داده جدول را اضافه می کنیم.
// configuration
$dbtype = "sqlite";
$dbhost = "localhost";
$dbname = "test";
$dbuser = "root";
$dbpass = "admin";
// database connection
$conn = new PDO("mysql:host=$dbhost;dbname=$dbname",$dbuser,$dbpass);
// new data
$title = "ZEND FRAMEWORK TUTORIAL";
$author = "PHP Everyday";
$cover = fopen('7.png','rb');
// query
$sql = "INSERT INTO books (title,author,cover) values(?,?,?)";
$q = $conn->prepare($sql);
$q->bindParam(1, $title);
$q->bindParam(2, $author);
$q->bindParam(3, $cover, PDO::PARAM_LOB);
$q->execute();
?>
حالا داده را بازیابی می کنیم.
// configuration
$dbtype = "sqlite";
$dbhost = "localhost";
$dbname = "test";
$dbuser = "root";
$dbpass = "admin";
// database connection
$conn = new PDO("mysql:host=$dbhost;dbname=$dbname",$dbuser,$dbpass);
// query
$sql = "SELECT id,title,author,cover FROM books";
$q = $conn->prepare($sql);
$q->execute();
$q->bindColumn(1, $id);
$q->bindColumn(2, $title);
$q->bindColumn(3, $author);
$q->bindColumn(4, $cover, PDO::PARAM_LOB);
while($q->fetch())
{
file_put_contents($id.".png",$cover);
echo "$title, $author,
";
}
?>