上传一张图片并插入同名,不同尺寸和不同文件夹的2image
第一个文件夹是user_data,另一个是mid_image。
我的PHP代码在这里。
function photo_gallery()
{
global $obj;
$image_id1 =$_REQUEST['image_id'];
if($image_id1 ==0)
{
if($_FILES['file']['size'] > 0)
{
$ext = explode('.',$_FILES['file']['name']);
$image_type = $ext[count($ext) - 1];
$img = date('dmYhis').'.'.$image_type;
$image_full_path = (IMAGE_BASE_URL.'/'.$img);
move_uploaded_file($_FILES['file']['tmp_name'],'user_data/'.$img);
$get_image_size = getimagesize('user_data/'.$img);
}
$s=mysql_query("select image_id from photo_gallery ORDER BY image_id DESC");
$r=mysql_fetch_array($s);
$sql_data_array = array('image_name'=>$img,
'image_status'=>$image_status,
'image_type'=>$image_type,
'image_url'=>$image_full_path,
'image_dimensions'=>$get_image_size[0].' x '. $get_image_size[1],
'image_created_date'=>'now()');
$obj->Insert('photo_gallery',$sql_data_array);
$_SESSION['success']="image inserted successfully";
header('location:multiple.php');
}
}
答案 0 :(得分:1)
将主图像上传到一个根文件夹中,并以不同的大小调用以下函数两次。希望这会有所帮助。
function createThumbs( $pathToImages, $pathToThumbs, $new_height, $new_width, $filename )
{
$info = pathinfo($pathToImages . $filename);
if ( strtolower($info['extension']) == 'jpg' )
$img = imagecreatefromjpeg( "{$pathToImages}" );
if ( strtolower($info['extension']) == 'gif' )
$img = imagecreatefromgif( "{$pathToImages}" );
if ( strtolower($info['extension']) == 'png' )
$img = imagecreatefrompng( "{$pathToImages}" );
$width = imagesx( $img );
$height = imagesy( $img );
$tmp_img = imagecreatetruecolor( $new_width, $new_height );
imagecopyresized( $tmp_img, $img, 0, 0, 0, 0, $new_width, $new_height, $width, $height );
if ( strtolower($info['extension']) == 'jpg' )
imagejpeg( $tmp_img, "{$pathToThumbs}{$filename}" );
if ( strtolower($info['extension']) == 'gif' )
imagegif( $tmp_img, "{$pathToThumbs}{$filename}" );
if ( strtolower($info['extension']) == 'png' )
imagepng( $tmp_img, "{$pathToThumbs}{$filename}" );
}
感谢。