Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

php डेटाबेस छवि शो समस्या

यदि आपने डेटाबेस में छवि की सामग्री को सहेजा है तो आप data: . का उपयोग कर सकते हैं यूरी इस सामग्री को <img /> . में दिखाता है उपनाम। यह आपको अन्य सामग्री में विभिन्न माइम प्रकार की सामग्री एम्बेड करने की अनुमति देता है, देखें डेटा यूआरआई योजना

लेकिन आपको वास्तव में डेटाबेस में किसी भी फाइल (छवि की परवाह किए बिना या नहीं) को सहेजना नहीं चाहिए। फ़ाइलें फ़ाइल सिस्टम से संबंधित हैं, जैसा कि नाम से ही पता चलता है। डेटाबेस में फ़ाइलों को सहेजने में आपको एक बड़ा ओवरहेड मिलता है। विशेष रूप से छवियों के लिए आपको (शायद) एक PHP स्क्रिप्ट चाहिए जो छवि लोड करती है, उदाहरण के लिए। अगर आप <img src="showimage.php?id=5" alt="..." /> जैसी किसी चीज़ का उपयोग करते हैं . प्रत्येक छवि के लिए आपको एक अतिरिक्त PHP स्क्रिप्ट को कॉल करने की आवश्यकता होती है, और आपको कुछ भी प्राप्त नहीं होता है। हर कोई आपको फाइल सिस्टम में फाइलों को सहेजना और फाइल सिस्टम के माध्यम से सामान्य रूप से लोड करना बेहतर होगा। तो आप <img src="images/foobar/xyz.png" alt="..." /> जैसे टैग का उपयोग करें बजाय। यहां तक ​​कि "मैं अपने डेटाबेस में छवियों के लिए कोई 'टूटा हुआ लिंक' नहीं चाहता" तर्क मायने नहीं रखता क्योंकि आप बस पथ के अंदर आईडी का उपयोग करते हैं और file_exists() . का उपयोग करते हैं यह जांचने के लिए कि क्या कोई छवि लिंक . है मान्य है या नहीं।

$path = 'images/useravatars/'.$row['ID'].'.png'; // as an example
if (file_exist($path)) {
     echo '<img src="'.$path.'" alt="username" />';
} else {
     echo '<img src="images/noimage.png" alt="No Image found" />';
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. nodejs mysql त्रुटि:कनेक्शन खो गया सर्वर ने कनेक्शन बंद कर दिया

  2. mySQL डीबी तालिका में फ्रेंच वर्ण कैसे सम्मिलित करें?

  3. VB.NET:'MySql.Data.MySqlClient.Replication.ReplicationManager' के लिए टाइप इनिशियलाइज़र ने एक अपवाद फेंका

  4. MySQL डेटाबेस से कुछ गूंजें

  5. MySQL:विभिन्न तालिकाओं पर जोड़ना और गुणा करना