MySQL

2009-11-03 3 views
5

में छवियां MySQL में एक छवि संबंधित डेटा प्रकार है जिसका उपयोग प्रत्येक रिकॉर्ड के लिए छवियों को संग्रहीत करने के लिए किया जा सकता है। आपकी सहायता की सराहना।MySQL

चीयर्स! अनिल

उत्तर

1

BLOB डेटा प्रकारों में से किसी एक को आजमाएं।

8

आप BLOB प्रकार के कुछ प्रकार का उपयोग करना होगा:

MySQL Reference: BLOB and TEXT types

कौन सा आप टाइप प्रयोग छवि को आप स्टोर करना चाहते हैं के आकार पर निर्भर करता है।

6

प्रदर्शन-वार ड्राइव पर फ़ाइल के रूप में फ़ाइल को स्टोर करना शायद बेहतर है और केवल फ़ाइल नाम या फ़ाइलपैथ और शायद माइम प्रकार डेटाबेस में लिखें। लेकिन जैसा कि अन्य कहते हैं, BLOB वह है जो आप चाहते हैं।

8

जैसा कि पहले कहा गया था, blob जाने का तरीका है, हालांकि, सैनहोलो बताता है कि यह वास्तव में प्रदर्शन-वार नहीं है और अंततः आप समस्याओं में भाग लेंगे क्योंकि आपका डेटाबेस वास्तव में वास्तव में तेज़ी से बढ़ सकता है!

डेटाबेस पर फ़ाइल नाम क्यों नहीं सूचीबद्ध करते हैं और सर्वर पर फ़ाइल संग्रहीत करते हैं?

मुख्य रूप से इस तरह की अनुमति देने की वजह से सुरक्षा समस्याएं नहीं होंगी। यदि आप वास्तव में सभी उपयोगकर्ताओं को सामग्री देखने या पकड़ने की अनुमति नहीं देकर अपने आधार को कवर करने की कोशिश कर रहे हैं, तो आपके पास दो विकल्प हैं।

विकल्प ए) फ़ाइल को एक अद्वितीय, गैर पहचानने योग्य नाम जैसे फ़्लिकर करता है। फ़ाइल का नाम दो हैश समझता है। एक उपयोगकर्ता हैश और एक फ़ाइल हैश। दूसरा हैश गुप्त है और इसे प्राप्त करने का एकमात्र तरीका यह परीक्षण और त्रुटि से होगा। this file I have on Flickr पर एक नज़र डालें। उपयोगकर्ता द्वारा संरक्षित (केवल परिवार देख सकता है) लेकिन आप इसे ठीक से एक्सेस कर पाएंगे क्योंकि यूआरएल स्वयं सुरक्षा के रूप में कार्य करता है: http://farm2.static.flickr.com/1399/862145282_bf83f25865_b.jpg, भले ही आप यादृच्छिक रूप से हैश उत्पन्न करने की कोशिश कर रहे हों और एक मान्य पाया जाए तो यह छिपा होगा गुमनाम क्योंकि आप नहीं जानते कि यह किससे था।

विकल्प बी) एक्सेस को सीमित करने के लिए सर्वर साइड ऑन्कोलॉजी का उपयोग करें। यह विधि सर्वर के लिए सुरक्षित लेकिन अधिक महंगा है। आप एक स्क्रिप्ट सेट अप करेंगे जो session_permissions या किसी चीज़ के आधार पर फ़ाइल तक पहुंच को अस्वीकार/अस्वीकार कर देगा।

http://yourserver.com/getprotectedfile.php?filename=213333.jpeg

session_start(); 

// logic to verify the user is ok 
if($_SESSION['user_access']!=true) { 
    exit('user not allowed here'); 

// WATCHOUT! THIS IS NOT SECURE! EXAMPLE ONLY. 
// on a production site you have to be sure that $filename will not point to a system file 
$filename = $_GET['filename']; 

// gets the file and outputs it to the user 
header('Content-type: image/jpeg'); 
header('Content-Length: '.filesize($filename)); 
readfile($filename); 
+1

मैं भी अपनी फ़ाइलें निर्देशिका की जड़, में इंकार/अनुमति दें डाल करने के लिए एक '.htaccess' फ़ाइल जोड़ेंगे: निम्नलिखित कोड ऐसा ही कुछ एक्सेस करके ही कहा जाता है को देखो आदेश ** सभी से अस्वीकार ** और आप सुरक्षित हैं। – Pascal