این تابع رو نوشتم دقیقا همین کار رو میکنه شما فقط ار بخش آپلود عکسش استفاده کن
function addpic()
{
$error=array();
if(isset($_POST['submit']))
{
if($_POST['group']==0)
{
$error[]="لطفا یک نام را انتخاب کنید";
}
else
{
$group_id=$_POST['group'];
}
if(empty($error))
//uploaded
if(isset($_FILES['pic']))
{
if(!empty($_FILES['pic']['name']))
{
$name=$_FILES['pic']['name'];
$type=$_FILES['pic']['type'];
$tmp=$_FILES['pic']['tmp_name'];
$size=$_FILES['pic']['size'];
$err=$_FILES['pic']['error'];
$valid=array("image/jpeg","image/png","image/gif");
if($err==0)
{
if($size>=2000000)
{
$error[]="حجم فایل بیش از حد مجاز است(2mb)";
}
else
{
if(in_array($type,$valid))
{
if($type=$valid[0])
{
$ext=".jpg";
}
elseif($type=$valid[1])
{
$ext=".png";
}
elseif($type=$valid[2])
{
$ext=".gif";
}
$newname=md5(rand(000000,999999));
$newname2=$newname.$ext;
$copy=move_uploaded_file($tmp,"../images/".$newname2);
}
else
{
$error[]="فایل برای آپلود مجاز نیست".$size;
}
}
}
else
{
echo "$err";
}
}
else
{
$error[]="لطفا یک عکس انتخاب کنید";
}
}
///uploaded
if(empty($error))
{
$q="INSERT INTO `gallery` VALUES('','$newname2','$group_id')";
$r=$this->database->runQuery($q);
if($r)
{
echo "عکس با موفقیت درج شد";
echo $size;
}
else
{
echo mysql_error();
}
}
else
{
foreach($error as $val)
{
echo $val."<br />";
}
}
}
}