کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

آموزش کار با 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, ‎ ‎ 
                        ‎";‎ 
                        ‎}‎ 
                        ‎?>‎
                
1394/07/27 4217 1339
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...