यदि आप चाहते हैं तो आप अपने डेटाबेस में छवियों को स्टोर कर सकते हैं (हालांकि उन्हें फाइलों के रूप में संग्रहीत करने में कुछ भी गलत नहीं है, जो आपकी स्थिति में उपयुक्त है), लेकिन कच्चे बाइनरी डेटा को बीएलओबी में स्टोर करें (यानी इसे एन्कोड न करें बेस 64)। आप file_get_contents
. से प्राप्त बाइनरी डेटा को एम्बेड कर सकते हैं सीधे अपनी क्वेरी में, बशर्ते आप उचित एस्केप फ़ंक्शन का उपयोग करें (mysql_real_escape_string
आपके मामले में) पहले।
छवि के आउटपुट के लिए, आप इसे वैसे ही कर सकते हैं जैसे आप इसे अभी कर रहे हैं, लेकिन आपको इसे बेस 64-एन्कोडेड और data
के साथ आउटपुट करना होगा यूआरआई योजना इस तरह:
echo '<img alt="embedded image" src="data:image/png;base64,' . chunk_split(base64_encode($get_pics2['img_location'])) . '">';
ध्यान दें कि एम्बेडेड छवि डेटा के कुछ फायदे और नुकसान हैं। कुछ महत्वपूर्ण नुकसानों के बारे में पता होना चाहिए जिनमें बेस 64 एन्कोडिंग (मूल से लगभग 33% बड़ा) और संभावित कैशिंग समस्याएं हैं।