"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية تخزين واسترداد الصور من قاعدة بيانات MySQL باستخدام PHP؟

كيفية تخزين واسترداد الصور من قاعدة بيانات MySQL باستخدام PHP؟

نشر في 2025-02-06
تصفح:265

How to Store and Retrieve Images from a MySQL Database Using PHP?

يجب اتخاذ خطوات. تم توفير مثال على بنية جدول مناسبة بعنوان "TestBlob" أدناه: إنشاء Table TestBlob ( Image_id Tinyint (3) ليس افتراضيًا فارغًا "0" ، Image_type varchar (25) ليس افتراضيًا فارغًا "، صورة Blob ليست فارغة ، Image_size varchar (25) ليس افتراضيًا فارغًا "، Image_ctgy varchar (25) ليس افتراضيًا فارغًا "، Image_name varchar (50) ليس افتراضيًا فارغًا " ) ؛

إدراج صورة:

لإدراج صورة في قاعدة البيانات ، والحصول على بيانات الصورة وأبعادها باستخدام أدوات ملف PHP. اتصل بقاعدة بيانات MySQL وتنفيذ استعلام SQL مشابهًا لما يلي ، مع التأكد من هروب بيانات الصورة لمنع حقن SQL:
$ imgdata = file_get_contents ($ filename) ؛ $ size = getImagesize ($ filename) ؛ $ SQL = Sprintf ("أدخل في TestBlob (Image_type ، Image ، Image_size ، image_name) قيم ('٪ s' ، '٪ s' ، '٪ d' ، '٪ s') "، mysql_real_escape_string (حجم $ ['mime']) ، mysql_real_escape_string ($ imgdata) ، حجم $ [3] ، mysql_real_escape_string ($ _ files ['userfile'] ['name']) ) ؛ mysql_query ($ sql) ؛

create table testblob (
    image_id        tinyint(3)  not null default '0',
    image_type      varchar(25) not null default '',
    image           blob        not null,
    image_size      varchar(25) not null default '',
    image_ctgy      varchar(25) not null default '',
    image_name      varchar(50) not null default ''
);
استرداد صورة:

. قم بتعيين رأس نوع المحتوى المناسب وعرض الصورة باستخدام أمر صدى PHP: $ sql = "حدد الصورة من TestBlob where image_id = 0" ؛ $ result = mysql_query ("$ sql") ؛ رأس ("نوع المحتوى: Image/JPEG") ؛ echo mysql_result ($ result ، 0) ؛

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3