使用PHP脚本将上传的图像转换为PNG

时间:2011-05-13 17:58:11

标签: php actionscript-3 upload

我已经在Flash中创建了一个链接到PHP脚本的上传按钮,我想知道是否有任何方法可以在用户上传时将所有图像转换为PNG?这就是我到目前为止所做的,但它似乎对我没有用,有人能指出我正确的方向吗?

<?php
    if (move_uploaded_file($_FILES['Filedata']['tmp_name'], 
          "Parts/userdata/" . $_FILES['Filedata']['name']))
    {
        switch ($_FILES['Filedata']['type']) {
            case ".jpg": case ".jpeg":
                $image = imagecreatefromjpeg($_FILES['Filedata']['name']);
                imagepng($image, $_FILES['Filedata'] . 'png');
                imagedestroy($image);
                break;
            case "gif":
                $image = imagecreatefromgif($_FILES['Filedata']['name']);
                imagepng($image, $_FILES['Filedata'] . 'png');
                imagedestroy($image);
                break;
            default:
               echo "PNG Given";
        }
        echo "OK";
    }
    else
    {
         echo "ERROR";
    }
?>

1 个答案:

答案 0 :(得分:5)

查看我的一些代码,我认为

imagepng($image, $_FILES['Filedata'] . 'png');

应该阅读

imagepng($image, $_FILES['Filedata']['name'] . 'png');

或类似的东西。您可能希望使用basename或类似内容删除扩展程序。 (http://php.net/manual/en/function.basename.php)