PHP GD -kuvake Kuva ei näy, koska siinä on virheitä Firefoxissa
Kun tuotat kuvaa PHP: ssä, esimerkiksi lisäämällä vesileima palvelimelle tallennettuun kuvaan käyttämällä alla olevaa koodia tai vastaavaa PNG-tiedoston sijaan JPEG-tiedostoa, kuvaa ei ehkä luota ollenkaan ja heittää virheen, joka näkyy Firefoxissa, mutta ei Chrome.
Tällainen koodi, vaikka jotkut palvelimet toimivatkin, saattavat nyt työskennellä joissakin muissa, joskus epäselvistä syistä. Minun tapauksessani se toimi hyvin hienosti paikallisesti, mutta tuotti virheen alapuolella Internet-palvelimella, kuvaa ei voida näyttää, koska se sisältää virheitä.
Asia voi olla useista syistä, tässä muutamia:
Lähtö on jo asetettu aiemmin.
Todellinen virhe kuvantuotannosta.
Käytetään väärää kuvan tyyppiä.
Kuvakirjastoa ei ole asennettu.
Lähtö on jo asetettu aiemmin
Vaikka ei tarkoituksellisesti olisikin mahdollista, että muut aikaisemmat komentotiedostot sisältäisivät lopuksi välilyöntejä - jotta vältytään tästä virheestä, varmista, että PHP suosittelee, ettei sulje skriptejä, joilla on PHP-päätymerkki?>
Sitten, ennen kuin käytät otsikkotoimintoa, käytä seuraavaa koodia varmistaaksesi, että kaikki aiemmin asetetut otsikot hylätään
Ja myös tämä toiminto varmistaaksesi, ettei otsaketta ja kuvaa ole tuotettu
Tämä ratkaisi asian minun tapauksessani, ja kuva näytettiin uudelleen oikein.
Todellinen virhe kuvantuotannosta
Jos todellinen virhe on heitetty kuvankäsittelyn aikana, varmista, että PHP on asetettu näyttämään kaikki mahdolliset virheet ja tarkista vastaavat lokit, jotta se voi seurata sitä ja ratkaista sen.
Opi SEO -perusteet: Ilmoittaudu tänään!
Paranna verkkosivustosi näkyvyyttä ja liikennettä hallitsemalla SEO: n perusteet helposti seurataan peruskurssillamme.
Aloita SEO: n oppiminenSeuraavalla koodilla PHP raportoi kaikki lokitiedoston virheet:
Sitten saat selville, että joitain virheitä ilmoitettiin, vaikka ne eivät näkyisi tulostus html-palvelimessa, koska palvelinasetukset.
Käytetään väärää kuvan tyyppiä
Varmista, että käyttämäsi kuvatyypit ovat oikein, esimerkiksi käyttämällä tätä koodia, jotta voit erottaa png- ja jpeg-tiedostot.
Varmista myös, että otsikko on oikea käytettävän lähdön mukaan riippuen käytetystä kuvankäsittelytoiminnosta
Kuvakirjastoa ei ole asennettu
Varmista, että kuvakirjastot on asennettu. Tee näin toiminto phpinfo (); ja tarkista seuraavaan PHP GD: hen liittyvä arvo, grafiikkakirjasto, jota käyttävät funktiot, kuten imagepng ();
Jos paketit puuttuvat, tapa ratkaista se riippuu paikallisesta konfiguraatiosta joko lisäämällä paketti PEAR-komennoilla tai verkko-isännöllä, joka on rakennettu ratkaisuun paketin asennusta varten.
Mitä tehdä, kun imagejpeg tai imagepng ei toimi
Avaa NotePad ++: ssa PHP-tiedosto, joka kutsuu imagepng-toimintoa, ja tallenna se menemällä valikkoon Koodaus> Muunna UTF-8: ksi ilman BOM.
Siirry DreamWeaverissa sivun Ominaisuudet> Otsikko / Koodaus> Poista Unicode Signature (BOM).
Kun PHP imagejpeg tai imagepng ei toimi, se johtuu todennäköisimmin siitä, että PHP-tiedosto on koodattu BOM-aineistolla, Bill of Material -toiminnolla, ja siksi lisätietoa lähetetään kuvan kanssa ennen kuvan tietoja.
PHP imagejpeg- ja PHP imagepng -toiminnot toimivat funktiona, joka lähettää kuvakoodin suoraan palvelimen vastaukseen.
PHP - imagepng ei toimi oikeinPHP - imagepng-toiminto
PHP - imagejpeg - toiminto
Usein Kysyttyjä Kysymyksiä
- Miksi en voi näyttää PHP GD: llä luotua kuvaa selaimessani?
- Jos PHP GD -luotu kuva ei näytä ja näyttää virhettä selaimessa, se voi johtua useista syistä, kuten aikaisemmasta tulosta jo lähetetään, aitoja virheitä kuvan luomisen aikana, väärän kuvan tyypin käyttäminen tai GD -kuvakirjasto ei asennettu. Varmista, että aikaisempaa lähtöä ei ole lähetetty, tarkista aitoja virheitä, tarkista kuvatyyppi ja otsikko ja vahvista GD -kirjaston asennus.
- Kuinka kehittäjät voivat korjata PHP GD: n luomien kuvien ongelman, joka ei näy Firefoxissa virheiden takia?
- Kehittäjien tulisi tarkistaa kuvan luomiskoodin virheiden varalta, varmistaa, että oikea sisältötyyppinen otsikko lähetetään ennen kuvatietoja ja varmista, että PHP-virheitä tai varoituksia ei tuoteta. OB_CLEAN (): n käyttö ennen kuvan tulostamista voi myös auttaa.
Yoann Bierling on verkkojulkaisun ja digitaalisen konsultointiprofiili, joka tekee globaalista vaikutuksesta tekniikan asiantuntemuksen ja innovaatioiden avulla. Intohimoinen yksilöiden ja organisaatioiden valtuuttamiseen menestymään digitaaliaikakaudella, hänet pyritään tuottamaan poikkeuksellisia tuloksia ja lisäämään kasvua koulutuksen sisällön luomisen kautta.
Opi SEO -perusteet: Ilmoittaudu tänään!
Paranna verkkosivustosi näkyvyyttä ja liikennettä hallitsemalla SEO: n perusteet helposti seurataan peruskurssillamme.
Aloita SEO: n oppiminen