загрузка изображений работает на локальном хосте, но не онлайн - PullRequest
0 голосов
/ 29 июня 2018

Я знаю, что на этот вопрос много раз отвечали, но у меня все еще проблемы с загрузкой изображений ..

Загрузка изображений отлично работает на локальном хосте, но не работает на удаленном сервере (linux)

Я уже пробовал решения, связанные с этим вопросом. И я также попытался изменить разрешения на 777 и 755, но все равно он не работал.

Но все равно не работает.

Спасибо за любую помощь.

//==================== Insert Section ========================
$tablename='tbl_slider';
if(isset($_REQUEST['submit']) && $_REQUEST['submit']=='Submit')
{
    $heading=$_REQUEST['heading'];
    $content = $_REQUEST['content'];


    $data = array(
            'heading' => $heading,
            'content' => $content

    );


    $lastid=$obj->insert($tablename,$data);
    if($lastid>0)
    {
        $uploadpath='../upload/slider/';
        $img=$obj->ImageUpload('image',$uploadpath,'img-');

        if(!empty($img))
        {
            $data['image']=$img['name'];
            $result=$obj->update($tablename,$data,"id='".$lastid."'");
            @unlink($uploadpath.$previous_pic);
        }


        $msg='<div class="alert alert-success alert-dismissable">
                <button aria-hidden="true" data-dismiss="alert" class="close" type="button">×</button>
                <strong>    <i class="icon fa fa-check"></i>Success!</strong>
                Product Added Successfully..!
              </div>';
    }
    else
    {
        $msg='<div class="alert alert-danger alert-dismissable">
                <button aria-hidden="true" data-dismiss="alert" class="close" type="button">×</button>
                <strong>    <i class="icon fa fa-check"></i>Warning!</strong>
                An Unexpected Error.
             </div>';
    }
}

//============= Function For Image Uploading ==============
    function ImageUpload($fieldname,$uploadpath,$pfx)
    {
        if(count($_FILES[$fieldname]['name'])>0)
        {
            if (!mkdir($uploadpath))
            {
                mkdir($uploadpath,077,true);
            }

            $targetpath = $uploadpath;
            $ext=$_FILES[$fieldname]['name'];
            $ext=explode(".",$ext);
            if($ext[1]=="jpg" || $ext[1]=="jpeg" || $ext[1]=="png" || $ext[1]=="PNG" || $ext[1]=="JPEG" || $ext[1]=="JPG")
            {
                if($_FILES[$fieldname]['size'] <= 2000000)                  // 2MB
                {
                    $filename=$targetpath.$pfx.time().".".$ext[1];              
                    $name=end(explode('/',$filename));
                    if(move_uploaded_file($_FILES[$fieldname]['tmp_name'],$filename))
                    {   
                        return array('source'=>$filename,'name'=>$name);
                    }
                }
            }
            else
            {
                //echo "Please Choose Image Format";
            }
        }
    }

//=============== Insert Into Datebase==========================        
public function insert($table=null,$array_of_values=array()) 
{
    if ($table===null || empty($array_of_values) || !is_array($array_of_values)) return false;
    $fields=array(); $values=array();
    foreach ($array_of_values as $id => $value) {
        $fields[]=$id;
        if (is_array($value) && !empty($value[0])) $values[]=$value[0];
        else $values[]="'".$value."'";
    }
     $s = "INSERT INTO $table (".implode(',',$fields).') VALUES ('.implode(',',$values).')';
    if ($this->con->query($s)) return $this->con->lastInsertId();       
    return false;   
}

Ответы [ 2 ]

0 голосов
/ 30 июня 2018

Есть проблема с правами доступа к каталогу.

give permission to the upload folder
0 голосов
/ 29 июня 2018

Чтобы устранить проблему, выполните следующие действия:

  1. Чек error_log
  2. Проверьте, проходит ли ваш код это if: if($lastid>0)
  3. Чек $_FILES['userfile']['error']
  4. Проверьте phpinfo(), ini настройки: upload_max_filesize, post_max_size, max_input_time
...