【问题标题】:img src "../" and "./" path url link [closed]img src“../”和“./”路径url链接[关闭]
【发布时间】:2016-04-30 07:45:30
【问题描述】:

在 MySQL 表中,我有一个名为 path 的行。此表包含与此类似的路径:

./gallery/1/sweater.jpg

我在 index.php 中使用:

<img src="" />

效果很好。但是当客户选择一个类别时,例如:衣服,然后我的程序将他重定向到路径:

./categories/clothes.php

在文件clothing.php中我想显示来自数据库的图片,即:

./gallery/1/sweater.jpg

但我不能这样做,因为文件 Closs.php 位于名为 categories 的文件夹中,因此要使其正常工作,路径应该带有双点:

../gallery/1/sweater.jpg

但问题是在我的数据库中只有一个点:

./gallery/1/sweater.jpg

最好的方法是什么?

  1. 我可以在衣服.php 旁边写一个脚本,在单点路径上加一个点。不丑吗?
  2. 您知道更多示例吗?我在 php 中制作了非常大的程序,目前包含数千行代码,但我被这件简单的事情困住了,哈哈。谢谢你的每一个回答。我当然接受。

【问题讨论】:

  • 使路径相对于某处,然后在打印时通过某些中心功能扩展它。 (顺便说一句,img 标签是自动关闭的。)

标签: html image url hyperlink path


【解决方案1】:

只需使用域相对路径,即以斜杠开头的路径。

<img src="/gallery/1/sweater.jpg">

【讨论】:

  • 这不是“绝对路径”,而是域相对路径或“绝对路径引用”。真正的绝对路径将具有完整的域和协议。
  • @Praveen Kumar 我知道,我没有足够的声望来发布 cmets,如果有任何模组看到这个,请将我的答案移到评论中。
  • @Alexander O'Mara 已修复。
【解决方案2】:

您不希望使用相对路径引用您的静态画廊目录。由于您使用的是 PHP,因此您可以创建一个实用程序函数来获取站点根目录,然后附加您存储在数据库中的其余路径。这适用于大多数情况:

$root = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . '/';

注意:这不处理 url 中的端口号或用户名,但您可能不需要。

【讨论】:

    猜你喜欢
    • 2015-04-06
    • 2018-03-31
    • 2021-02-12
    • 2015-11-18
    • 1970-01-01
    • 1970-01-01
    • 2014-01-20
    • 2012-09-29
    • 2014-11-28
    相关资源
    最近更新 更多