PHP GD genereret billede Billedet kan ikke vises, fordi det indeholder fejl i Firefox



Når du genererer et billede med PHP, f.eks. Tilføjer et vandmærke til et server-lagret billede ved hjælp af nedenstående kode eller lignende med JPEG i stedet for PNG, genereres muligvis ikke et billede, og det smides en fejl, der er direkte synlig på Firefox, men ikke på Chrome.

Denne type kode, på trods af at du arbejder på nogle servere, kan nu arbejde på nogle andre, nogle gange af uklare grunde. I mit tilfælde fungerede det fint fint lokalt, men produceret under fejl på internet server, billedet kan ikke vises fordi det indeholder fejl.

Problemet kan komme fra flere grunde, her er nogle af dem:

En udgang er allerede indstillet tidligere.

En ægte fejl fra billedgenerering.

Den forkerte billedtype bruges.

Billedbibliotek er ikke installeret.

En udgang er allerede indstillet tidligere

Selv om det ikke er hensigtsmæssigt, kan det f.eks. Være tilfældet, at andre tidligere scripts indeholdt mellemrum i slutningen - for at undgå denne fejl, skal du, som PHP anbefaler, ikke lukke scripts med PHP end tag?>

Derefter skal du bruge følgende kode, før du bruger headerfunktionen, for at sikre, at ethvert tidligere sæt overskrift kasseres

Og også denne funktion for at sikre, at der ikke er genereret nogen output før overskriften og billedet

Dette løste problemet i mit tilfælde, og billedet blev korrekt vist igen.

En ægte fejl fra billedgenerering

Hvis en reel fejl blev kastet under billedgenerering, skal du sørge for at PHP er indstillet til at vise alle mulige fejltyper, og kontrollere de tilhørende logfiler for at kunne spore det og løse det.

Masterwebsted Oprettelse: Tilmeld dig nu!

Transform din digitale tilstedeværelse med vores omfattende webstedsoprettelseskursus - start din rejse til at blive en webekspert i dag!

Tilmeld dig her

Transform din digitale tilstedeværelse med vores omfattende webstedsoprettelseskursus - start din rejse til at blive en webekspert i dag!

Følgende kode vil gøre PHP rapporter alle fejl i loggen:

Du kan måske finde ud af, at der blev rapporteret nogle fejl, selvom de ikke blev vist i output-html på grund af serverkonfiguration.

Den forkerte billedtype bruges

Sørg for, at de billedtyper, du bruger, er korrekte, f.eks. Ved hjælp af denne kode for at skelne mellem png og jpeg.

Sørg også for at overskriften er korrekt i henhold til det anvendte output afhængigt af den anvendte billedgenereringsfunktion

Billedbibliotek er ikke installeret

For at sikre, at billedbibliotekerne er installeret. For at gøre det skal du køre funktionen phpinfo (); i et script og tjek output for følgende værdi relateret til PHP GD, grafikbiblioteket, der bruges af funktioner som imagepng ();

Hvis der mangler pakker, afhjælpes løsningen på din lokale konfiguration, enten ved at tilføje pakken ved hjælp af PEAR-kommandoer eller ved hjælp af den webhost-indbyggede løsning til pakkeinstallation.

Hvad skal man gøre, når imagejpeg eller imagepng ikke virker

I NotePad ++ skal du åbne PHP-filen, der kalder imagepng-funktionen, og gemme den, når du har gået til menuen Encoding> Convert til UTF-8 uden BOM.

I DreamWeaver skal du gå til Sideegenskaber> Titel / Kodning> Fjern markeringen Inkluder Unicode Signature (BOM).

Når PHP imagejpeg eller imagepng ikke virker, skyldes det højst sandsynligt, at PHP-filen er kodet med en BOM, en Bill of Material, og derfor sendes der ekstra information med billedet før billeddataene.

PHP imagejpeg og PHP imagepng-funktionerne er funktionen til at sende en billedkode direkte i serverresponsen.

PHP - imagepng virker ikke korrekt
PHP - imagepng funktion
PHP - imagejpeg funktion

Ofte Stillede Spørgsmål

Hvorfor kan jeg ikke vise det billede, der er oprettet med PHP GD i min browser?
Hvis dit PHP GD -genererede billede ikke viser og viser en fejl i browseren, kan det muligvis skyldes flere grunde, såsom tidligere output, der allerede er sendt, ægte fejl under billedgenerering, ved hjælp af den forkerte billedtype eller GD -billedbiblioteket ikke bliver installeret. Sørg for, at der ikke sendes nogen output, kontrollerer for ægte fejl, bekræft billedtypen og header, og bekræft GD -bibliotekets installation.
Hvordan kan udviklere løse problemet med PHP GD -genererede billeder, der ikke vises i Firefox på grund af fejl?
Udviklere skal kontrollere billedgenereringskoden for fejl, sikre, at den korrekte indholdstype-header sendes inden billeddata og verificerer, at der ikke udsendes nogen PHP-fejl eller advarsler. Brug af ob_clean (), før du udsender billedet, kan også hjælpe.

Yoann Bierling
Om forfatteren - Yoann Bierling
Yoann Bierling er en webudgivelse og digital konsulentprofessionel, der får en global indflydelse gennem ekspertise og innovation inden for teknologier. Lidenskabelig med at styrke enkeltpersoner og organisationer til at trives i den digitale tidsalder, er han drevet til at levere ekstraordinære resultater og drive vækst gennem oprettelse af uddannelsesmæssigt indhold.

Masterwebsted Oprettelse: Tilmeld dig nu!

Transform din digitale tilstedeværelse med vores omfattende webstedsoprettelseskursus - start din rejse til at blive en webekspert i dag!

Tilmeld dig her

Transform din digitale tilstedeværelse med vores omfattende webstedsoprettelseskursus - start din rejse til at blive en webekspert i dag!




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

Efterlad en kommentar