2015-04-07 3 views
5

मेरे पास एक लेख बनाने के लिए एक साधारण रूप है: शीर्षक, छवि, श्रेणी, शरीर, आदि .. मेरी समस्या छवि इनपुट के साथ है।अपलोड करने के लिए कोई नई छवि चुनने के बिना एक फॉर्म सबमिट करने के बाद पिछली अपलोड की गई छवि (डीबी में) को कैसे रखा जाए

एक नया एक का चयन करना है और सब कुछ प्रस्तुत करने से काम करता है ठीक:

  • छवि सर्वर पर अपलोड किया जा रहा है
  • चित्र का शीर्षक db से
  • सहेजा जा रहा है और मैं इसे प्रिंट कर सकते हैं लेख।

पूरे फॉर्म को संपादित करके, सभी फ़ील्ड भरकर, लेकिन छवि फ़ील्ड को छोड़कर, और आखिरकार सबमिट करना, डीबी में छवि फ़ील्ड मान कुछ भी नहीं बदल रहा है।

मैं PHP फ़ाइल कॉन्फ़िगर कर सकते हैं, तो हर बार उपयोगकर्ता प्रपत्र एक छवि चुनें (यदि वहाँ एक छवि पूर्व है कि लेख में अपलोड किया गया था) पिछले छवि प्रस्तुत के रूप में (db से) रखने के बिना बजाय प्रस्तुत कुछ भी नहीं।


इन जानकारियां किसी भी मदद की हो सकती है, तो:

<input type="file" name="fileToUpload" id="fileToUpload" value="<?php echo $results['article']->img ?>" /> 

उत्तर

3

क्या कुछ इस तरह के बारे में?

if(!empty($_FILES['fileToUpload']['name'])) //new image uploaded 
{ 
    //process your image and data 
    $sql = "UPDATE table SET name=$someName, image=$someImageName,... WHERE id = $someId";//save to DB with new image name 
} 
else // no image uploaded 
{ 
    // save data, but no change the image column in MYSQL, so it will stay the same value 
    $sql = "UPDATE table SET name=$someName,... WHERE id = $someId";//save to DB but no change image column 
} 
//process SQL query in $sql 
1

मेक एक यदि: <?php echo '<img src="'.$results['article']->img.'" width="100px">'; ?>

छवि के लिए सरल इनपुट क्षेत्र:

मैं इस तरह की छवि मुद्रित कर सकते हैं खंड जो जांचता है कि फ़ाइल अपलोड इनपुट खाली है या नहीं। यदि यह खाली है तो क्वेरी निष्पादित न करें।

विशेषता प्रकार के बिना इनपुट प्रकार = "फ़ाइल" का उपयोग करें।

<input type="file" name="fileToUpload" id="fileToUpload" /> 

यहाँ के लिए उदाहरण है अगर खंड

if(!empty($_FILES['fileToUpload']['name'])) { 
     $origFile = $_FILES['fileToUpload']['name']; 
     $tempFile = $_FILES['fileToUpload']['tmp_name']; 
     $sizeFile = $_FILES['fileToUpload']['size']; 

     /* UPLOAD CODE GOES HERE */ 
    } 
+0

टीएनएक्स प्लामेन। जैसा आपने कहा था मैंने किया लेकिन अब सबमिट करने के बाद (और शीर्षक के लिए केवल एक परीक्षण में बदलाव और दूसरी संपादन समय के लिए कोई छवि नहीं चुनने के लिए) डीबी में कोई अपडेट संग्रहीत नहीं किया जा रहा है। – Pantelis

+0

आपको फ़ील्ड <इनपुट प्रकार = "टेक्स्ट" नाम = "अपलोड किया गया FileName" मान = " img?>" /> और $ _POST ['uploadFileName'] आपको फ़ील्ड जोड़ना होगा mysql में छवि के लिए नाम। आप इस क्षेत्र में कस्टम मान सेट कर सकते हैं और नाम अपडेट कर सकते हैं। –

+1

टेक्स्ट फ़ील्ड में पिछले मान को भरना अपमानजनक है, आप उसी मान के साथ छवि कॉलम अपडेट करेंगे! बस ईएलएसई क्लॉज जोड़ें और अन्य मूल्यों को सहेजें छवि से बाहर ... – zdeniiik

संबंधित मुद्दे

 संबंधित मुद्दे