2013-02-01 41 views
7

मैं jQuery का उपयोग कर रहा एक बटन क्लिक होने पर जो फिर एक फ़ाइल के लिए एक कॉल आग पहचान करने के लिए: डेटाबेससीएसवी क्रोम के लिए डाउनलोड - त्रुटि: MIME प्रकार के पाठ/सीएसवी

window.location.href = "url"; 

इस फ़ाइल में प्रश्नों, से परिणाम प्रदान फिर इसे एक सीएसवी फ़ाइल में लिखता है। मैं निम्न हेडर निर्धारित किया है:

header('Content-Type: text/csv;'); 
header('Content-Disposition: attachment; filename=data.csv'); 

यह जो कंसोल लॉग में निम्न त्रुटि देता है क्रोम को छोड़कर सभी ब्राउज़रों पर काम करता है "संसाधन दस्तावेज़ के रूप में व्याख्या लेकिन MIME प्रकार के पाठ/सीएसवी के साथ स्थानांतरित:" Url ""।

अजीब बात यह है कि अगर मैं सीधे फ़ाइल को कॉल करता हूं तो यह सभी ब्राउज़रों में काम करता है।

कोड:

   $fp = fopen('php://output', 'w'); 

       header('Content-Type: text/csv;'); 
       header('Content-Disposition: attachment; filename=data.csv'); 
       header("Expires: 0"); 
       header("Cache-control: private"); 

       //Field Headers 
       $ncols = oci_num_fields($stid); 
       $headers_row = array(); 
       for ($i = 1; $i <= $ncols; ++$i) { 

        $headers_row[] = oci_field_name($stid, $i); 

       } 

       while ($row = oci_fetch_array($stid, OCI_NUM+OCI_RETURN_NULLS)) { 

        if(!empty($row)){ 
         if(!empty($headers_row)){ 
          fputcsv($fp, $headers_row); 
          $headers_row = ''; 
         } 

         fputcsv($fp, $row); 
        } 

       } 

       fclose($fp);      
       oci_close($conn); 

किसी को भी किसी भी विचार है?

+0

आप क्वेरी भाग में किसी भी SESSION चर का उपयोग कर रहे हैं? –

+0

@ कास्परमरी नहीं, यह एक जीईटी का उपयोग करता है। – Elliot

+0

क्या क्रोम डाउनलोड की अनुमति नहीं देता है? क्रोम में मैं इसे चेतावनी के रूप में प्राप्त करता हूं, त्रुटि नहीं। सुनिश्चित नहीं है कि इसे कैसे ठीक किया जाए लेकिन मैं अभी भी अपनी फ़ाइल डाउनलोड कर सकता हूं। –

उत्तर

0

शीर्षलेख ("सामग्री-प्रकार: एप्लिकेशन/बल-डाउनलोड");

+0

मुझे अब यह त्रुटि मिल रही है: दस्तावेज़ को दस्तावेज़ के रूप में व्याख्या किया गया है लेकिन एमआईएमई प्रकार एप्लिकेशन/बल-डाउनलोड के साथ स्थानांतरित किया गया है: "ur" – Elliot

+0

हेडर सेट करने के बाद आप क्या कर रहे हैं? –

+0

डेटाबेस क्वेरी करना, मैंने हेडर को फ़ाइल के शीर्ष पर बहुत अधिक सेट किया है। – Elliot

0

शीर्षलेख ("समाप्त हो जाता है: 0");

शीर्षलेख ("कैश-नियंत्रण: निजी");

+0

अभी भी वही त्रुटि मिल रही है जैसा कि मूल पोस्ट में दिखाया गया है। – Elliot