I've been working in this code do receive multiple DATA from input files. This is working ok, resize and upload. But if I just send one file, or two files, i receive thsi warnings::
Warning: getimagesize(images/) [function.getimagesize]: failed to open stream: Permission denied in C:\Programas\EasyPHP 2.0b1\www\fotos\teste.php on line 26
Warning: Division by zero in C:\Programas\EasyPHP 2.0b1\www\fotos\teste.php on line 27
Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in C:\Programas\EasyPHP 2.0b1\www\fotos\teste.php on line 36
Problem In Creating image
If I send the three files it runs without warnings!!!!
Help me solve this please...
the code:
Code: Select all
<?php
if(isset($_POST['Submit']))
{
$size = 90; // the thumbnail height
$filedir = 'images/'; // the directory for the original image
$thumbdir = 'images/'; // the directory for the thumbnail image
$prefix = 'small_'; // the prefix to be added to the original name
$maxfile = '800000';
$mode = '0666';
$i = 1;
$htmlFieldName = 'image' . $i;
while(isset($_FILES[$htmlFieldName])){
$userfile_name = $_FILES[$htmlFieldName]['name'];
$userfile_tmp = $_FILES[$htmlFieldName]['tmp_name'];
$userfile_size = $_FILES[$htmlFieldName]['size'];
$userfile_type = $_FILES[$htmlFieldName]['type'];
if (isset($_FILES[$htmlFieldName]['name']))
{
$prod_img = $filedir.$userfile_name;
$prod_img_thumb = $thumbdir.$prefix.$userfile_name;
move_uploaded_file($userfile_tmp, $prod_img);
chmod ($prod_img, octdec($mode));
$sizes = getimagesize($prod_img);
$aspect_ratio = $sizes[1]/$sizes[0];
if ($sizes[0] <= $size)
{
$new_width = $sizes[1];
$new_height = $sizes[0];
}else{
$new_height = $size;
$new_width = abs($new_height/$aspect_ratio);
}
$destimg = ImageCreateTrueColor($new_width,$new_height) or die('Problem In Creating image');
$srcimg = ImageCreateFromJPEG($prod_img) or die('Problem In opening Source Image');
ImageCopyResized($destimg,$srcimg,0,0,0,0,$new_width,$new_height,ImageSX($srcimg),ImageSY($srcimg)) or die('Problem In resizing');
ImageJPEG($destimg,$prod_img_thumb,90) or die('Problem In saving');
imagedestroy($destimg);
}
echo '
<br />
<a href="'.$prod_img.'">
<img src="'.$prod_img_thumb.'" width="'.$new_width.'" heigt="'.$new_height.'">
</a>';
$i++;
$htmlFieldName = 'image' . $i;
}
}else{
echo '
<form method="POST" action="'.$_SERVER['PHP_SELF'].'" enctype="multipart/form-data">
<input type="file" name="image1" /><br />
<input type="file" name="image2" /><br />
<input type="file" name="image3" /><br />
<input type="Submit" name="Submit" value="Submit">
</form>';
}
?>