如何使用db存储路径显示图像

时间:2019-10-16 06:57:58

标签: php image url laravel-5

我正在创建一个工具,用户可以在其中上传图像或提供图像的外部链接。因此,我将该图像网址存储在数据库中。 如果用户上传图像,那么我正在存储文件的完整路径 例如:

C:\xampp\htdocs\project\public\upload/1571149288.jpg

,如果用户给我一个图像网址

例如:

https://example.com/images/ask1571149288e.jpg. 

我正在存储此完整路径,在下一个屏幕中,我需要显示用户上载的最后三张图像,无论使用哪个数据库存储路径,

Contoller

$previousUpload = DB::table('background_trimmer')->where('user_id',1)->limit(3)->orderBy('id', 'desc')->get();

    return view('user.clippingMagic.upload', array('previousUpload'=>$previousUpload));

刀片视图

    <div id="recent-images" class="mt-3">
     @foreach ($previousUpload as $recentImage)
         <div class="recentimages">
             <img src="..\{{$recentImage->image_title}}" alt="image recent" />        

        </div>
      </div>
 @endforeach
</div>

获取 404 图片 现在图像src是 => http://127.0.0.1:8000/C:\xampp\htdocs\New folder\marketermagic\public\upload/1571206254images.jpg

我想要什么

C:\xampp\htdocs\New folder\marketermagic\public\upload/1571206254images.jpg

如果我点击C:\xampp\htdocs\New folder\marketermagic\public\upload/1571206254images.jpg,则在浏览器选项卡中的该URL将显示图像。 因为我已经存储了图像的完整路径,所以我不需要使用laravel添加任何基本URL,它应该照原样使用我的URL。 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

案例研究:

您有两个选择:

  1. 用户可以上传图片
  2. 或者他/她可以输入外部图像链接。
您要做的是:
  1. 如果用户上传图像,然后将您的内部脚本设为可公开浏览的url。就像用户上传abc.png图片一样,您应该为该图片制作可浏览的公共网址。怎么说?只需添加base url + upload folder path + image name非常简单的步骤。最终输出应如下所示:http://example.com/YOUR_ASSETS_PATH/abc.png并将其存储到DB。

  2. 如果用户输入外部URL,只需将其保存到数据库即可。

查看: <img src="{{$recentImage->image_path}}" alt="image recent" />

就这样!