我有一些代码应该允许用户浏览他的机器以获取 jpeg、gif 或 png 上传。
我的代码在我的 xampp localhost 上运行良好。
我已将我的代码上传到 Amazon Web Services,在那里我有一个安装了 LAMP 的 Ubuntu 12.04 服务器。一旦那里的代码不起作用。
我已经找到了我认为代码失败的地方。正是在getimagesize($old_image_path)
此返回一个空集。
$old_image_path = /var/www/ch23_ex1/images//leaf.gif
当我从桌面上选择一张图片时,不知道为什么会显示这条路径,但它可以与 xampp 一起使用。
请注意,用于测试这些输出的 echo 语句是:
allow_url_fopen = 1
/var/www/ch23_ex1/images//NChandler03.jpgbool(false) 图像类型 = 文件必须是 JPEG、GIF 或 PNG 图像。
这是我认为失败的代码部分:
function resize_image($old_image_path, $new_image_path,
$max_width, $max_height) {
echo "allow_url_fopen = " . ini_get("allow_url_fopen")."<br>";
// Get image type
echo $old_image_path;
//$image_info = file_get_contents($old_image_path);
$image_info = getimagesize($old_image_path);
$image_type = $image_info[2];
var_dump($image_info);
echo 'Image type = '.$image_type;
// Set up the function names
switch($image_type) {
case 2:
$image_from_file = 'imagecreatefromjpeg';
$image_to_file = 'imagejpeg';
break;
case 1:
$image_from_file = 'imagecreatefromgif';
$image_to_file = 'imagegif';
break;
case 3:
$image_from_file = 'imagecreatefrompng';
$image_to_file = 'imagepng';
break;
default:
echo $image_type;
echo 'File must be a JPEG, GIF, or PNG image.';
exit;
}
}