رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
آپلود از ساب دامین داخل روت (حل شد)
#1
من ادمین سایتم توی ساب دامین هست
http://admin.mysite.com

میخوام از ادمین عکس آپلود بشه توی فایلی تو دامین اصلی یعنی اینجا

http://mysite.com/app/upl/


دسترسی نمیده بهم

کد:
move_uploaded_file() [function.move-uploaded-file]: Unable to access

سطح دسترسی هم 755 هست
پاسخ
تشکر شده توسط:
#2
کدتون را میزارید ؟
گروه طراحی سایت زینیا

عقل سالم در بدن سالم ! ای برنامه نویس مواظب خودت باش

باگ عصبی چیست ؟
var_dump(1 == 1); //bool(false)
پاسخ
تشکر شده توسط: sorkhabi
#3
اکشن فرم رو به این صورت بفرستید
http://mysite.com/app/upl/
پاسخ
تشکر شده توسط: sorkhabi
#4
(29-03-1394، 09:42 ق.ظ)ابوالفضل زیارت بان نوشته: کدتون را میزارید ؟



<?php


class upload {
    public function __construct() {
        
    }
    
    
    
    function createThumbnail()
    {
        if(isset($_POST['submit'])) {
            
            if(isset($_FILES['picture']) && !empty($_FILES['picture']['name'])) {
                $pic_name = $_FILES['picture']['name'];
                $pic_temp = $_FILES['picture']['tmp_name'];
                $pic_size = $_FILES['picture']['size'];
                $pic_type = $_FILES['picture']['type'];
                $pic_error = $_FILES['picture']['error'];
                $validExt = array('image/jpeg', 'image/gif', 'image/png');
                $path = rootAddress;
                if($pic_error == 0 ){
                    if($pic_size <= 16777216) {
                        if(in_array($pic_type, $validExt)) {
                            if($pic_type == $validExt[0]) {
                                $ext = '.jpg';
                            }
                            elseif($pic_type == $validExt[1]){
                                $ext = '.gif';
                            }
                            elseif($pic_type == $validExt[2]){
                                $ext = '.png';
                            }
                            $newName = md5(rand(0,9999)) . $ext;
                            echo rootAddress.$newName;
                            move_uploaded_file($pic_temp,rootAddress.$newName);
                            $src = ImageCreateFromJPEG($newName);
                            $width = ImageSX($src);
                            $height = ImageSY($src);
                            $x = $width / 2;
                            $y = $height / 2;
                            $dst = ImageCreateTrueColor($x, $y);
                            ImageCopyResampled($dst, $src, 0, 0, 0, 0, $x, $y, $width, $height);
                            ImageJPEG($dst, rootAddress.'thumbnails/' . $newName);
                            ImageDestroy($dst);
                            ImageDestroy($src);
                            if (is_uploaded_file($_FILES['picture']['tmp_name'])){
                                return $newName;
                            }
                        }
                        else {
                            $error[]= 'این نوع فایل برای آپلود مجاز نیست';
                        }
                    }
                    else {
                        $error[] =  'حجم فایل بیش از حد  مجاز است';
                    }
                }
                else {
                    $error[] = 'هنگام آپلود مشکلی پش آمده';
                }
            }
            else {
                $error[] = 'لطفا یک عکس انتخاب کنید';
            }
        }
    }
}


پاسخ
تشکر شده توسط:
#5
(29-03-1394، 11:58 ق.ظ)hamid نوشته: اکشن فرم رو به این صورت بفرستید
http://mysite.com/app/upl/

اکشن؟؟

عکس فقط قراره توی اون فایل ذخیره بشه
چرا اکشنو تنظیم کنم روی اونجا
پاسخ
تشکر شده توسط:
#6
یکبار این رو اکو کنید ببینید چی چاپ میشه:
rootAddress.$newName
پاسخ
تشکر شده توسط: sorkhabi
#7
(29-03-1394، 01:08 ب.ظ)ADMIN نوشته: یکبار این رو اکو کنید ببینید چی چاپ میشه:
rootAddress.$newName

http://mysite.ir/app/upl/54072f485cdb789...139561.jpg
پاسخ
تشکر شده توسط:
#8
خوب این الان اشتباهه. شما برای کار با فایلها توی اسکریپت باید مسیر فیزیکی بدین نه URL.
پاسخ
تشکر شده توسط: sorkhabi
#9
اینو تست کنید:
$path = dirname(__FILE__) . '/../';
پاسخ
تشکر شده توسط: sorkhabi
#10
این تو روت خود ساب دامین آپلود میکنه
پاسخ
تشکر شده توسط: sorkhabi
#11
خوب یه /.. دیگه اضافه کنید. هرچی لازمه پوشه بالا برین با .. انجام بدین.
پاسخ
تشکر شده توسط:
#12
شما دو آدرس اینجا بگذارید تا مسیر را دقیق بگیم :

1. آدرس اصلی پوشه public_html

2. آدرس اصلی پوشه subdomain از پوشه public_html
گروه طراحی سایت زینیا

عقل سالم در بدن سالم ! ای برنامه نویس مواظب خودت باش

باگ عصبی چیست ؟
var_dump(1 == 1); //bool(false)
پاسخ
تشکر شده توسط: sorkhabi
#13
(29-03-1394، 01:56 ب.ظ)ADMIN نوشته: خوب یه /.. دیگه اضافه کنید. هرچی لازمه پوشه بالا برین با .. انجام بدین.

با این آدرس عکس اصلی آپلود میشه


$path = dirname(dirname(dirname(__FILE__))).'/app/upl/';



اما
'thumbnails/
بهش اضافه میکنم thumbnail ارور میده ولی باز فایل اصلی آپلود میشه
پاسخ
تشکر شده توسط: sorkhabi
#14
اینو تست کنید:
class upload {
    public function __construct() { }
    
    function createThumbnail()
    {
        if(isset($_POST['submit'])) {
            if(isset($_FILES['picture']) && !empty($_FILES['picture']['name'])) {
                $pic_name = $_FILES['picture']['name'];
                $pic_temp = $_FILES['picture']['tmp_name'];
                $pic_size = $_FILES['picture']['size'];
                $pic_type = $_FILES['picture']['type'];
                $pic_error = $_FILES['picture']['error'];
                $validExt = array('image/jpeg', 'image/gif', 'image/png');
                $path = dirname(dirname(dirname(__FILE__))).'/app/';
                if($pic_error == 0 ){
                    if($pic_size <= 16777216) {
                        if(in_array($pic_type, $validExt)) {
                            if($pic_type == $validExt[0]) {
                                $ext = '.jpg';
                            }
                            elseif($pic_type == $validExt[1]){
                                $ext = '.gif';
                            }
                            elseif($pic_type == $validExt[2]){
                                $ext = '.png';
                            }
                            $newName = md5(rand(0,9999)) . $ext;
                            move_uploaded_file($pic_temp, $path . 'upl/' . $newName);
                            $src = ImageCreateFromJPEG($newName);
                            $width = ImageSX($src);
                            $height = ImageSY($src);
                            $x = $width / 2;
                            $y = $height / 2;
                            $dst = ImageCreateTrueColor($x, $y);
                            ImageCopyResampled($dst, $src, 0, 0, 0, 0, $x, $y, $width, $height);
                            ImageJPEG($dst, $path . 'thumbnails/' . $newName);
                            ImageDestroy($dst);
                            ImageDestroy($src);
                            if (is_uploaded_file($_FILES['picture']['tmp_name'])){
                                return $newName;
                            }
                        }
                        else {
                            $error[]= 'این نوع فایل برای آپلود مجاز نیست';
                        }
                    }
                    else {
                        $error[] =  'حجم فایل بیش از حد  مجاز است';
                    }
                }
                else {
                    $error[] = 'هنگام آپلود مشکلی پش آمده';
                }
            }
            else {
                $error[] = 'لطفا یک عکس انتخاب کنید';
            }
        }
    }
}
پاسخ
تشکر شده توسط: sm_pakdel , sorkhabi
#15

Warning: imagecreatefromjpeg() [function.imagecreatefromjpeg]: Unable to access ad62cfd33e3870262d6bf5331c1f13b0.jpg in /home/atrienir/public_html/admin/classes/class.upload.php on line 32
Warning: imagecreatefromjpeg(ad62cfd33e3870262d6bf5331c1f13b0.jpg) [function.imagecreatefromjpeg]: failed to open stream: No such file or directory in /home/atrienir/public_html/admin/classes/class.upload.php on line 32
Warning: imagesx() expects parameter 1 to be resource, boolean given in /home/atrienir/public_html/admin/classes/class.upload.php on line 33
Warning: imagesy() expects parameter 1 to be resource, boolean given in /home/atrienir/public_html/admin/classes/class.upload.php on line 34
Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in /home/atrienir/public_html/admin/classes/class.upload.php on line 37
Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in /home/atrienir/public_html/admin/classes/class.upload.php on line 38
Warning: imagejpeg() expects parameter 1 to be resource, boolean given in /home/atrienir/public_html/admin/classes/class.upload.php on line 39
Warning: imagedestroy() expects parameter 1 to be resource, boolean given in /home/atrienir/public_html/admin/classes/class.upload.php on line 40
Warning: imagedestroy() expects parameter 1 to be resource, boolean given in /home/atrienir/public_html/admin/classes/class.upload.php on line 41
news Object ( [fields:news:private] => Array ( [id] => [cat_id] => 1 [owner_id] => [title] => cms [description] =>
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 1 مهمان