PHP GD व्युत्पन्न केलेली प्रतिमा प्रतिमा प्रदर्शित केली जाऊ शकत नाही कारण त्यात Firefox मध्ये त्रुटी आहेत



PHP सह एक प्रतिमा व्युत्पन्न करताना, उदाहरणार्थ, सर्व्हर संग्रहीत चित्रात वॉटरमार्क जोडणे, खाली कोडचा वापर करणे किंवा पीएनजीऐवजी जेपीएजी प्रमाणेच समान, प्रतिमा कदाचित सर्व व्युत्पन्न होणार नाही आणि त्रुटी टाकू शकते, थेट फायरफॉक्सवर दिसू शकते, परंतु नाही Chrome वर

काही प्रकारचे सर्व्हरवर काम केल्याशिवाय या प्रकारचा कोड कदाचित काही वेगळ्या कारणास्तव काम करू शकेल. माझ्या बाबतीत, हे स्थानिकरित्या उत्तम प्रकारे कार्य केले परंतु इंटरनेट सर्व्हरवर त्रुटी खाली दिलेली आहे, प्रतिमा प्रदर्शित केली जाऊ शकत नाही कारण त्यात त्रुटी आहेत.

समस्या अनेक कारणांमुळे येऊ शकते, त्यापैकी काही येथे आहेत:

एक आउटपुट आधीपासूनच सेट केले गेले आहे.

प्रतिमा निर्मितीपासून एक अस्सल त्रुटी.

चुकीचा प्रतिमा प्रकार वापरला जातो

प्रतिमा लायब्ररी स्थापित नाही.

एक आउटपुट आधीपासूनच सेट केले गेले आहे

जरी हे जाणूनबुजून नसले तरी, उदाहरणार्थ, इतर मागील स्क्रिप्टमध्ये शेवटी त्रुटी असू शकते - हे चूक टाळण्यासाठी, कृपया पीएचपी शिफारस केल्याप्रमाणे, PHP end tag सह स्क्रिप्ट्स बंद न करता?>

नंतर, हेडर फंक्शन वापरण्यापूर्वी, खालील सेट हेडर टाकून दिले आहे हे सुनिश्चित करण्यासाठी खालील कोड वापरा

आणि हे फंक्शन हेडर आणि इमेज करण्यापूर्वी कोणतेही आऊटपुट तयार केले नसल्याचे सुनिश्चित करणे

यामुळे माझ्या समस्येचे निराकरण झाले आणि प्रतिमा पुन्हा पुन्हा प्रदर्शित झाली.

प्रतिमा निर्मितीपासून एक अस्सल त्रुटी

जर चित्रपटामध्ये प्रत्यक्ष त्रुटी आली, तर कृपया PHP सर्व शक्य प्रकारची त्रुटी दर्शविण्यावर सेट आहे, आणि त्यावर लक्ष ठेवण्यास आणि त्याचे निराकरण करण्यात सक्षम होण्यासाठी संबंधित लॉग तपासा.

खालील कोड लॉगमध्ये सर्व त्रुटी कळवल्याबद्दल PHP ने सूचित करेल:

मास्टर वेबसाइट निर्मिती: आता नोंदणी करा!

आमच्या सर्वसमावेशक वेबसाइट क्रिएशन कोर्ससह आपल्या डिजिटल उपस्थितीचे रूपांतर करा - आज वेब तज्ञ होण्याचा आपला प्रवास सुरू करा!

येथे नोंदणी करा

आमच्या सर्वसमावेशक वेबसाइट क्रिएशन कोर्ससह आपल्या डिजिटल उपस्थितीचे रूपांतर करा - आज वेब तज्ञ होण्याचा आपला प्रवास सुरू करा!

आपल्याला नंतर काही त्रुटी आढळल्या की, सर्व्हर कॉन्फिगरेशनमुळे ते आउटपुट HTML मध्ये दिसत नसले तरीही

चुकीचा प्रतिमा प्रकार वापरला जातो

आपण वापरत असलेले प्रतिमा प्रकार योग्य असल्याची खात्री करा, उदाहरणार्थ png आणि jpeg दरम्यान फरक करण्यासाठी हा कोड वापरून

तसेच वापरलेल्या आउटपुटच्या अनुसार हेडर योग्य आहे हे सुनिश्चित करा, वापरलेल्या प्रतिमा निर्मिती कार्यावर अवलंबून

प्रतिमा लायब्ररी स्थापित नाही

प्रतिमा लायब्ररी स्थापित असल्याची खात्री करण्यासाठी. असे करण्यासाठी, फंक्शन phpinfo चालवा (); एका स्क्रिप्टमध्ये, आणि PHP जीडीशी संबंधित खालील मूल्यासाठी आऊटपुट तपासा, ग्राफिक लायब्ररी ज्यामध्ये फिंगरपॉईंट () जसे की प्रतिमापींग ();

पॅकेज नसल्यास, तो सोडविण्याचा मार्ग आपल्या स्थानिक कॉन्फिगरेशनवर अवलंबून असतो, पीअर कमांडचा वापर करून पॅकेज जोडणे किंवा पॅकेज अधिष्ठापनेसाठी तयार केलेले वेब होस्ट वापरणे.

Imagejpeg किंवा imagepng कार्य करत नसताना काय करावे

नोटपॅड ++ मध्ये, पीपीएच फाइल उघडा जी इमेजपिंग फंक्शन कॉल करते आणि मेनूवर जाण्याआधी ते सेव्ह करते एन्कोडिंग> बीओएमशिवाय यूटीएफ -8 वर रूपांतरित करा.

ड्रीमवेव्हरमध्ये, पृष्ठ प्रॉपर्टीस> शीर्षक / एन्कोडिंग> अनिकॅक करा युनिकोड सिग्नेचर (बीओएम) समाविष्ट करा.

जेव्हा PHP imagejpeg किंवा imagepng कार्य करत नाही, तेव्हा बहुधा ही शक्यता आहे की PHP फाइल बीओएम, बिल ऑफ मटेरियलसह एन्कोड केली गेली आहे आणि म्हणूनच प्रतिमा डेटापूर्वी प्रतिमासह अतिरिक्त माहिती पाठविली गेली आहे.

पीएचपी इमेजजेपीजी आणि पीएचपी इमेजपिंग फंक्शन्स ही फंक्शन कोडवर थेट पाठविण्यासाठी वापरल्या जातात.

PHP - imagepng योग्यरित्या कार्य करत नाही
PHP - imagepng फंक्शन
PHP - imagejpeg फंक्शन

वारंवार विचारले जाणारे प्रश्न

मी माझ्या ब्राउझरमध्ये पीएचपी जीडीसह तयार केलेली प्रतिमा का प्रदर्शित करू शकत नाही?
जर आपली पीएचपी जीडी व्युत्पन्न केलेली प्रतिमा ब्राउझरमध्ये प्रदर्शित होत नाही आणि त्रुटी दर्शवित असेल तर ती कदाचित मागील आउटपुट आधीपासून पाठविली जात असलेल्या अनेक कारणांमुळे, प्रतिमा निर्मिती दरम्यान अस्सल त्रुटी, चुकीची प्रतिमा प्रकार वापरणे किंवा जीडी प्रतिमा लायब्ररी नाही. स्थापित केले जात आहे. मागील कोणतेही आउटपुट पाठविले नाही याची खात्री करा, अस्सल त्रुटी तपासा, प्रतिमा प्रकार आणि शीर्षलेख सत्यापित करा आणि जीडी लायब्ररीच्या स्थापनेची पुष्टी करा.
त्रुटींमुळे फायरफॉक्समध्ये न दर्शविणार्‍या पीएचपी जीडी व्युत्पन्न प्रतिमांच्या समस्येचे विकसक कसे निराकरण करू शकतात?
विकसकांनी त्रुटींसाठी प्रतिमा निर्मिती कोड तपासला पाहिजे, कोणत्याही प्रतिमेच्या डेटापूर्वी योग्य सामग्री-प्रकार शीर्षलेख पाठविला जात आहे याची खात्री करुन घ्या आणि पीएचपी त्रुटी किंवा चेतावणी आउटपुट केली जात असल्याचे सत्यापित करा. प्रतिमा आउटपुट करण्यापूर्वी ob_clean () वापरणे देखील मदत करू शकते.

Yoann Bierling
लेखकाबद्दल - Yoann Bierling
योअन बिअरलिंग एक वेब पब्लिशिंग आणि डिजिटल कन्सल्टिंग व्यावसायिक आहे, जे तंत्रज्ञानामध्ये कौशल्य आणि नाविन्यपूर्णतेद्वारे जागतिक प्रभाव पाडते. व्यक्ती आणि संस्थांना डिजिटल युगात भरभराट होण्यास सक्षम बनविण्याबद्दल उत्साही, त्याला शैक्षणिक सामग्री निर्मितीद्वारे अपवादात्मक परिणाम आणि वाढीस चालना देण्यासाठी चालविले जाते.

मास्टर वेबसाइट निर्मिती: आता नोंदणी करा!

आमच्या सर्वसमावेशक वेबसाइट क्रिएशन कोर्ससह आपल्या डिजिटल उपस्थितीचे रूपांतर करा - आज वेब तज्ञ होण्याचा आपला प्रवास सुरू करा!

येथे नोंदणी करा

आमच्या सर्वसमावेशक वेबसाइट क्रिएशन कोर्ससह आपल्या डिजिटल उपस्थितीचे रूपांतर करा - आज वेब तज्ञ होण्याचा आपला प्रवास सुरू करा!




टिप्पण्या (6)

 2018-08-19 -  Irvin Vasquez
Simple, clear and well explained, many thanks
 2018-08-19 -  Joyce Lawrence
ありがとう、非常に有益な
 2018-08-19 -  Catherine Roberts
Dokładnie tego, czego szukałem, idealnie
 2018-08-19 -  Headlinext
जानकारी का महान टुकड़ा, साझा करने के लिए धन्यवाद
 2018-08-19 -  Marshel
विश्वास नहीं कर सकता कि मुझे अंत में समाधान मिला, यह लंबे समय तक एक दुःस्वप्न था, अब हल हो गया
 2018-08-19 -  porcateraC
بالضبط ما كنت أبحث عنه ، مثالي

एक टिप्पणी द्या