2017-05-26 58 views
0

我上传的文件:Laravel流明上传文件全路径

if ($request->hasFile('cnicFrontUrl')) { 
    $picName = $request->file('cnicFrontUrl')->getClientOriginalName(); 
    $picName = base_path() . uniqid() . $picName; 
    $destinationPath = "uploads/user_files/cnic"; 
    $request->file('cnicFrontUrl')->move($destinationPath, $picName); 
    $userDetails->cnicFrontUrl = $picName; 
} 

的文件移动到project/public/uploads/user_files/cnic成功,

,但也进入到数据库中的文件名必须与远程服务器的目录路径像/var/www/html/baseApi/5927bcb59ba4fcar.png

我该如何能够存储文件名像https://example.com/public/uploads/user_files/cnic/5927bcb59ba4fcar.png所以它可以使用只能访问文件名。

回答

0

您可以取代

$userDetails->cnicFrontUrl = $picName; 

$userDetails->cnicFrontUrl = url("/public/uploads/user_files/cnic")."/".uniqid(). 
            $request->file('cnicFrontUrl') 
              ->getClientOriginalName(); 

$userDetails->cnicFrontUrl = asset($destinationPath. "/" . uniqid() . 
            $request->file('cnicFrontUrl') 
              ->getClientOriginalName()); 
+0

@linktohref ....好吧它被保存,但是一个小问题,我不能得到的通过在浏览器中粘贴网址的图像,它给了我'{“message”:“not_found”}'。我正在使用流明? apache文档根目录是'project/public'。 – Yellow

+0

@黄色这是因为你将上传的文件移动到非公开目录。 – Alfa

+0

@Alfa OP将文件移动到'project/public/uploads/user_files/cnic'文件根目录是'project/public'不应该是公共目录吗? – linktoahref