Frage

Was diesen Fehler verursacht?

Fatal error: Call to undefined function imagefilter() in /var/www/polaroid.php on line 5
  1 <?PHP
  2   $img_addr = $_GET['image_address'];
  3   $img = imagecreatefromjpeg($img_addr);
  4
      /* everything works as expected without this line */
  5   imagefilter($img, IMG_FILTER_GRAYSCALE);  
  6
  7   if ($img)
  8   {
        /* I moved the header function here so I can see errors in the browser. 
           If I leave it at the top of the file, the browser expects an image 
           and doesn't print the error messages. */
  9     header('Content-type: image/jpeg');
 10     imagejpeg($img);
 11   }
 12 ?>
 13

Dies ist die URL ich benutze:

http://localhost/polaroid.php?image_address=http://mattnelsoninfo.files.wordpress.com/2008/04/ceiling_cat1.jpg

Hinweis: gd wird in der Ausgabe von phpinfo aufgeführt ().

EDIT: Ich bin mit PHP Version 5.2.6-2ubuntu4.1

Ein weiterer EDIT:

phpinfo () ergibt dies im gd Abschnitt

gd
GD Support  enabled
GD Version  2.0 or higher
FreeType Support    enabled
FreeType Linkage    with freetype
FreeType Version    2.3.7
T1Lib Support   enabled
GIF Read Support    enabled
GIF Create Support  enabled
JPG Support     enabled
PNG Support     enabled
WBMP Support    enabled 

Danke!

War es hilfreich?

Lösung

Welche Version von PHP verwenden Sie? Es sieht aus wie eine Imagefilter PHP5 Funktion ist ... http: //us3.php .net / manual / en / function.imagefilter.php

EDIT: Ihr Code funktioniert auf meiner Version von PHP. Als Referenz hier ist mein phpinfo:

gd
GD Support  enabled
**GD Version    bundled (2.0.34 compatible)**
FreeType Support    enabled
FreeType Linkage    with freetype
FreeType Version    2.1.9
T1Lib Support   enabled
GIF Read Support    enabled
GIF Create Support  enabled
JPG Support     enabled
PNG Support     enabled
WBMP Support    enabled
XBM Support     enabled

Sie möchten sicherstellen, dass die GD Version gebündelt. Ich habe gesehen, dass Installationen GD Unterstützung sagen aktiviert, aber nicht gebündelt. Nicht sicher, ob das allerdings einen Unterschied macht.

Andere Tipps

Imagefilter verfügbar zu sein scheinen nur, wenn PHP agains der gebündelten GD-Bibliothek zusammengestellt, die in Ihrem Fall nicht, dass es (das ist der Unterschied zwischen der gebündelt und aktiviert). Da Sie mit Ubuntu die Version von PHP, die Sie im Repository finden sind gebündelt nicht GD.

http://www.php.net/manual/en/function. imagefilter.php gibt es einen Hinweis:

  

Hinweis : Diese Funktion ist nur verfügbar, wenn PHP mit der kompiliert   gebündelte Version der GD-Bibliothek.

So wie ein 2016-Update, PHP 5.3 erlaubt externen GD verwendet werden, aber dies aus irgendeinem Grund nicht in lucid / präzise arbeiten. treue, mit PHP 5.5, all Funktionen dieser Bild außer imageantialias arbeiten hat, Quelle https://bugs.launchpad.net/ubuntu/+source/php5/+bug/74647/comments/61 (und vorherige Kommentare).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top