Вот лог моего скрипта
file is not a valid image file
Вот код php
if (move_uploaded_file($_FILES['handtmann_picture']['tmp_name'], $uploadfile)) {
echo "<br \>Calling function createPic() with ".$_FILES['handtmann_picture']['name']." and ".$uploadfile."<br \>";
$result_array = getimagesize($uploadfile);
if ($result_array !== false) {
$mime_type = $result_array['mime'];
switch($mime_type) {
case "image/jpeg":
echo "file is jpeg type";
break;
case "image/gif":
echo "file is gif type";
break;
default:
echo "file is an image, but not of gif or jpeg type";
}
} else {
echo "file is not a valid image file";
exit;
}
$handtmann_picture = "/www/www.xxx.spb.ru/images/".createPic($uploadfile, $_FILES['handtmann_picture']['name'] );
}
функция createPic
function createPic($picPath, $picName) {
$ext=strtolower(substr($picName,-3));
$thumb_x=209;
$thumb_y=285;
$path_start='';
$small_path = "/www/www.xxx.spb.ru/images/".$picName;
$im_src = ($ext=='jpg')?ImageCreateFromJPEG ($picPath):ImageCreateFromGIF($picPath);
$im_dst = ($ext=='jpg')?ImageCreateTrueColor ($thumb_x,$thumb_y):ImageCreate ($thumb_x,$thumb_y);
$background_color = ImageColorAllocate ($im_dst, 255, 255, 255);
$k=(imagesx($im_src)>imagesy($im_src))?$thumb_y/imagesy($im_src):$thumb_x/imagesx($im_src);
$new_sizex=round(imagesx($im_src)*$k);
$new_sizey=round(imagesy($im_src)*$k);
$x_step=(imagesx($im_src)>imagesy($im_src))?(imagesx($im_src)-imagesy($im_src))/2:0;
$y_step=(imagesx($im_src)<imagesy($im_src))?(imagesy($im_src)-imagesx($im_src))/2:0;
imagecopyresampled($im_dst,$im_src,0,0,$x_step,$y_step,$new_sizex,$new_sizey,imagesx($im_src),imagesy($im_src));
if ($ext=='jpg') {
imagejpeg($im_dst,$small_path);
}
else {
imagegif($im_dst,$small_path);
}
return($picName);
}
В итоге заремил все gd'ное и просто попробовал зааплоадить картинку на сервер и переписав обратно открыть ... Нифига ... Заметил что внутри файла некоторые, как их там =), байтики не совпадают ... Точнее в hex-редакторе вижу один и тот же символ в оригинале и копии а коды у них разные ...
Получается что картинка уже прилетает на сервер покоцаной, хотя форма сделана как в мануале php по шаблону
<form enctype="multipart/form-data" action="_URL_" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="30000" />
Отправить этот файл: <input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>
В чем может быть замес?