我正在使用PHP在我的网络应用程序中上传图片。图像存储在服务器上的某个目录中,而它们的路径直接存储在MySQL数据库中。
上传进展顺利,图片进入文件夹,但问题是访问图片,其路径字段存储在数据库中:我还无法找到我应该使用的路径的正确形式,现在正在使用realPath和dirname函数帮助我获取路径,所以最后一个路径的例子是 C:\ wamp \ www \ webroot \ img.png (因为我在Windows上使用wampserver)所以当我做某事时喜欢:
<img src="$image->path" />
我没有在浏览器中显示图像,当我检查它时,我得到了预期的代码,如:
<img src="C:\wamp\www\webroot\img.png" />
表示此路径格式不正确以显示图像。
我尝试了很多东西:我采用相同的路径并使用浏览器进行操作,它向我展示了图像(自动使用文件协议),所以我将 file:// 添加到图像中路径,但没有什么是新的。我也尝试将其作为网址访问,并且例如它会在显示时显示图像
localhost/webroot/img.png
但我真正需要的是能够再次存储和检索图像文件。那么这是一个文件系统问题吗?代码平台是独立的吗?
我将非常感谢任何帮助
谢谢。
答案 0 :(得分:0)
您无法使用其路径显示图片,但会显示其网址。
在PHP中,我们仅用于在MySQL中保存文件名,然后用<img src="path/to/img/<?php echo $image->filename; ?>" />
显示图像
这就是全部!
答案 1 :(得分:0)
将文件protocal添加到您的路径中。
<img src="file:///<?php echo $image->path; ?>" />.
您必须做的最好的事情是将图像保存在项目/网站文件夹中的文件夹中。然后从DB中的根文件夹保存图像的路径。
示例:我在网站根文件夹的“Img”文件夹中上传了一个文件名“image.png”的图像。然后我会在我的DB中保存“Img / image.png”。 因此,无论何时我想引用图像,我都会使用
<img src="/<?php echo $image->path; ?>" />
或者
<img src="<?php echo $image->path; ?>" />
答案 2 :(得分:0)
抱歉浪费你的时间,我已经解决了这个问题。这是我的应用程序访问方式的问题。它应该只从名为 web 的目录访问,因此应该从该目录引用每个路径!!。