繁体   English   中英

Laravel在虚拟主机上上传图片

[英]Laravel image upload on webhosting

问题是我的图像上传在localhost上有效,但是在我将其上传到虚拟主机上后却无法正常运行。

我认为问题是,我在虚拟主机上的项目就像“ root”-> Project(除了public以外的所有Laravel文件夹)/ public_html(显然是Laravel项目中的public文件夹),而在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());
    }
}

我无法解决此问题,我们将不胜感激。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM