Imazhi i gjeneruar nga PHP GD Imazhi nuk mund të shfaqet sepse përmban gabime në Firefox



Kur gjeneron një imazh me PHP, për shembull duke shtuar një ujëra në një foto të ruajtur të serverit, duke përdorur kodin më poshtë ose një të ngjashëm me JPEG në vend të PNG, imazhi mund të mos gjenerohet fare dhe të hedh një gabim, i dukshëm direkt në Firefox, por jo në Chrome.

Ky kod, pavarësisht se punon në disa servera, tani mund të punojë në disa të tjera, ndonjëherë për arsye të panjohura. Në rastin tim, ai funksionoi në mënyrë të përsosur në nivel lokal, por u prodhua më poshtë gabimit në serverin e internetit, imazhi nuk mund të shfaqet sepse përmban gabime.

Çështja mund të vijë nga disa arsye, këtu janë disa prej tyre:

Një prodhim tashmë është vendosur më parë.

Një gabim i vërtetë nga gjenerimi i imazhit.

Përdoret tipi i gabuar i imazhit.

Biblioteka e imazheve nuk është instaluar.

Një prodhim tashmë është vendosur më parë

Edhe nëse jo qëllimisht, mund të ndodhë, për shembull, që skriptet e tjera të mëparshme përmbajnë hapësira në fund - për të shmangur këtë gabim, sigurohuni që, siç rekomandon PHP, të mos mbyllni skriptet me etiketën e PHP end?>

Pastaj, përpara se të përdorni funksionin e kokës, përdorni kodin e mëposhtëm për të siguruar që çdo header i vendosur më parë të hidhet poshtë

Dhe gjithashtu ky funksion për të siguruar që asnjë prodhim nuk është krijuar përpara kokës dhe imazhit

Kjo zgjodhi çështjen në rastin tim dhe imazhi u shfaq përsëri në mënyrë korrekte.

Një gabim i vërtetë nga gjenerimi i imazhit

Në rast se një gabim i vërtetë u hodh gjatë krijimit të imazhit, sigurohuni që PHP të jetë i vendosur për të shfaqur të gjitha llojet e mundshme të gabimeve, dhe të kontrolloni regjistrimet korresponduese, në mënyrë që të jetë në gjendje për të gjetur dhe zgjidhur atë.

Mësoni bazat e SEO: Regjistrohuni sot!

Rritni dukshmërinë dhe trafikun e faqes suaj të internetit duke zotëruar bazat e SEO me kursin tonë të Bazave të Lehta për tu ndjekur.

Filloni të mësoni SEO

Rritni dukshmërinë dhe trafikun e faqes suaj të internetit duke zotëruar bazat e SEO me kursin tonë të Bazave të Lehta për tu ndjekur.

Kodi pasues do të bëjë PHP raporton të gjitha gabimet në log:

Ju mund të gjeni se disa gabime janë raportuar, edhe nëse ato nuk shfaqen në html output, për shkak të konfigurimit të serverit.

Përdoret tipi i gabuar i imazhit

Sigurohuni që tipet e imazhit që po përdorni janë të sakta, për shembull duke përdorur këtë kod për të dalluar midis png dhe jpeg.

Gjithashtu sigurohuni që header është i saktë në bazë të prodhimit të përdorur, në varësi të funksionit të gjenerimit të imazhit të përdorur

Biblioteka e imazheve nuk është instaluar

Për të siguruar që bibliotekat e imazhit janë instaluar. Për ta bërë këtë, drejto funksionin phpinfo (); në një skriptë dhe kontrolloni prodhimin për vlerën e mëposhtme në lidhje me PHP GD, bibliotekën grafike që përdoret nga funksione si imagepng ();

Në rast se mungojnë paketat, mënyra për zgjidhjen e saj varet nga konfigurimi juaj lokal, ose duke shtuar paketën duke përdorur komandat PEAR ose duke përdorur web host-in e ndërtuar në zgjidhje për instalimin e pakos.

Çfarë duhet të bëni kur imagejpeg ose imagepng nuk punojnë

Në NotePad ++, hapni skedarin PHP që e quan funksionin imagepng dhe ruajeni pasi të shkoni në menynë Encoding> Convert to UTF-8 pa BOM.

Në DreamWeaver, shkoni tek Properties Faqe> Titulli / Encoding> zgjidhni Zgjidhni Unicode Signature (BOM).

Kur PHP imagejpeg ose imagepng nuk po funksionon, ka më shumë gjasa për shkak të faktit se skedari PHP është koduar me një BOM, një dokument i materialit, prandaj informacionet shtesë dërgohen me imazhin para të dhënave të imazhit.

PHP imagejpeg dhe PHP imagepng funksionet përdoren për të dërguar një kod foto direkt në përgjigjen e serverit.

PHP - imagepng nuk punon si duhet
Funksioni PHP - imagepng
Funksioni PHP - imagejpeg

Pyetjet E Bëra Më Shpesh

Pse nuk mund të shfaq imazhin e krijuar me PHP GD në shfletuesin tim?
Nëse imazhi juaj i gjeneruar PHP GD nuk po shfaq dhe tregon një gabim në shfletuesin, mund të jetë për shkak të disa arsyeve të tilla si dalja e mëparshme tashmë duke u dërguar, gabime origjinale gjatë gjenerimit të figurës, duke përdorur llojin e gabuar të imazhit, ose bibliotekën e imazhit GD jo duke u instaluar. Sigurohuni që asnjë prodhim i mëparshëm të mos dërgohet, kontrolloni për gabime të vërteta, verifikoni llojin dhe kokën e figurës dhe konfirmoni instalimin e bibliotekës GD.
Si mund të rregullojnë zhvilluesit çështjen e imazheve të krijuara nga PHP GD që nuk shfaqen në Firefox për shkak të gabimeve?
Zhvilluesit duhet të kontrollojnë kodin e gjenerimit të imazhit për gabime, të sigurojnë që koka e saktë e tipit të përmbajtjes të dërgohet para ndonjë të dhëne të imazhit dhe të verifikojë që nuk po prodhohen gabime ose paralajmërime të PHP. Përdorimi i OB_CLEAN () Para se të nxirrni imazhin gjithashtu mund të ndihmojë.

Yoann Bierling
Rreth Autorit - Yoann Bierling
Yoann Bierling është një profesionist i botimit dhe këshillimit dixhital në internet, duke bërë një ndikim global përmes ekspertizës dhe inovacionit në teknologji. I apasionuar pas fuqizimit të individëve dhe organizatave për të lulëzuar në epokën dixhitale, ai është i shtyrë të japë rezultate të jashtëzakonshme dhe të nxisë rritjen përmes krijimit të përmbajtjes arsimore.

Mësoni bazat e SEO: Regjistrohuni sot!

Rritni dukshmërinë dhe trafikun e faqes suaj të internetit duke zotëruar bazat e SEO me kursin tonë të Bazave të Lehta për tu ndjekur.

Filloni të mësoni SEO

Rritni dukshmërinë dhe trafikun e faqes suaj të internetit duke zotëruar bazat e SEO me kursin tonë të Bazave të Lehta për tu ndjekur.




Comments (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
بالضبط ما كنت أبحث عنه ، مثالي

Lini një koment