在网站主办上的Laravel图片上传

时间:2018-05-02 21:32:48

标签: php laravel

问题是我的图片上传工作在localhost上,但是一旦我在我的网站主机上传它就没有。

我认为问题在于,我的网站主办项目是“root” - > Project(所有Laravel文件夹除了public)/ public_html(显然是来自Laravel项目的公用文件夹)和localhost是标准的Laravel文件夹。

所以,我想不知何故,由于文件夹层次结构不同,控制器会错误的图像文件夹路由,上传失败。

控制器代码:

public function unos(Request $request){
    $request->validate([
       'inputUsername' => ['required'],
        'inputPassword' => ['required'],
        'ddlUloga' => ['required'],
        'ddlDrzava' => ['required'],
        'inputSlika' => ['required'],
    ], [
        'required' => 'Polje :attribute je obavezno!'
    ]);

    $kor = new Korisnik();
    $kor->username = $request->get("inputUsername");
    $kor->password = $request->get("inputPassword");
    $kor->uloga_id = $request->get("ddlUloga");
    $kor->drzava_id = $request->get("ddlDrzava");
    $slika = $request->file("inputSlika");

    $tmp_putanja = $slika->getPathName(); // tmp putanja
    $ekstenzija = $slika->getClientOriginalExtension(); // vraca: jpg, png - bez .
    $ime_fajla = time().'.'.$ekstenzija;
    $putanja = 'images/profilne/'.$ime_fajla;
    $kor->slika_url = $putanja;
    $putanja_server = public_path($putanja);

    try {
        File::move($tmp_putanja, $putanja_server);

        $rez = $kor->insertKorisnika();

        if($rez == 1){  
            return redirect()->back()->with("message", "Uspešno uneto");
        }
        else {
            return redirect()->back()->with("greska", "Greška pri unosu");
        }
    }
    catch (Exception $ex){
        \Log::error('MOJA GRESKA: '.$ex->getMessage());
    }
}

我无法解决这个问题,我会感激任何帮助。

0 个答案:

没有答案