Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

PHP Undefined Function Imagecreatefromjpeg

Anoniem
BasHamar
5 antwoorden
  • Ik probeer met de hulp van php om een geupload jpeg bestandje te resizen ik heb daar zelf al een script voor gevonden en snap hoe het in elkaar zit alleen wil hij bij imagecreatfromjpeg niet verder gaan.

    Zoals je hier onder kunt zien heb ik er 2 echo's ingeplaatst om te kunnen checken of mijn functie uitgevoerd wordt. Nu is het geval dat de eerst echo wel op het scherm verschijnt maar de 2e dus niet ("Jpeg Loaded") er moet dus iets misgaan bij het laden van de jpeg.

    Ik weet dat ik gd-library nodig heb maar als het goed is zit die in php 4.3.2 al standaard ingebouwd maar hoe kan ik checken of die er ook echt in zit phpinfo() ?? want daar lijkt het niet bij te zitten.

    Alvast bedankt voor de hulp groetjes Rob van de Voort

    function LoadJpeg ($imgname) {
    echo("<br>LoadJpeg Function Called");
    $im = @imagecreatefromjpeg ($imgname); /* Attempt to open */
    echo("<br> JpegLoaded");
    if (!$im) { /* See if it failed */
    $im = imagecreate (150, 30); /* Create a blank image */
    $bgc = imagecolorallocate ($im, 255, 255, 255);
    $tc = imagecolorallocate ($im, 0, 0, 0);
    imagefilledrectangle ($im, 0, 0, 150, 30, $bgc);
    /* Output an errmsg */
    imagestring ($im, 1, 5, 5, "Error loading $imgname", $tc);
    }
    return $im;
    }
  • Oh ja als ik de @ weghaal voor de functie geeft hij dus als error

    call to undifened function imagecreatefromjpeg

    Dat was het alvast bedankt

    Groeten Rob van de Voort
  • Weet je zeker dat de GD Library is geïnstalleerd? Zo ja, let dan even op deze opmerking uit de PHP manual:[quote:2269df5f6c]Het remote laden door deze functie wordt op dit moment niet ondersteund door de Windows versie van PHP[/quote:2269df5f6c]Mocht dit niet werken dan zou ik zeker even alle user comments lezen, er staan vaak bijzonder nuttige opmerkingen bij.

    - Bas
  • Je moet een aantal zaken regelen:
    Bij je PHP.ini staat er bij de [extensions] iets van GD.DLL of GD.EXE
    Daar moet je ; voor weghalen en aanpassen in GD2
    Verder moet je het pat naar je extensions goedzetten en een DLL copieren naar je system-directory.

    (ben nu niet thuis, maar in deze richtingen moet je het zoeken.)

    Als je alles heb aangepast moet je opnieuw je web-server starten et voila het werkt.

    Als je nog vragen heb… Over ruim 1 uur ben ik thuis en kan ik de instellingen nakijken
  • In PHP.ini (staat in je \windows-directory) moet je inderdaad de puntkomma weghalen voor

    extension=php_gd2.dll

    Staat in de "; Dynamic Extensions ;"-sectie

    Extensions kunnen het beste staan in een subdirectory van de directory waar je php.exe staat. (Default: C:\PHP, dus de extensions in C:\PHP\Extensions). Hier moeten die extension dus ook instaan :)
    Mocht je deze niet hebben dan staan ze op de php.net-site
    Verwijzing hiernaar in php.ini:

    ; Directory in which the loadable extensions (modules) reside.
    extension_dir = ./extensions/

    DLL's hoeven niet naar je windows en/of system directory gekopieerd te worden. Iig bij mijn installaties met IIS en Apache nooit hoeven doen.
    Let er verder even op dat je niet zowel php_gd.dll als php_gd2.dll aanzet, maar alleen php_gd2.dll.

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.