Php 从字符串和变量形成URL

Php 从字符串和变量形成URL,php,cross-browser,joomla,Php,Cross Browser,Joomla,我正在编写一个PHP脚本,该脚本基于某些元素自动显示一个图像,这些元素对于问题来说并不重要,因为这部分工作非常好。在我测试过的浏览器中,图像正确地显示在Google Chrome、Internet Explorer和Safari上。但是,它们不会出现在Firefox或Opera上。在Firefox中,不显示任何内容,而在Opera中,图像的路径是应该显示的路径。用于生成URL的代码如下所示: echo "<div class='jumih3'>" . $row['fname'] .

我正在编写一个PHP脚本,该脚本基于某些元素自动显示一个图像,这些元素对于问题来说并不重要,因为这部分工作非常好。在我测试过的浏览器中,图像正确地显示在Google Chrome、Internet Explorer和Safari上。但是,它们不会出现在Firefox或Opera上。在Firefox中,不显示任何内容,而在Opera中,图像的路径是应该显示的路径。用于生成URL的代码如下所示:

 echo "<div class='jumih3'>" . $row['fname'] . " " . $row['lname'] . "</div>";
 $image = JURI::root() . "\/images\/" . $row['id'] . ".jpg";
 $imagetest = JPATH_ROOT . "\/images\/" . $row['id'] . ".jpg";
 if (file_exists($imagetest))
 {
 echo "<br /><img src='" . $image . "'width='100' height='100' /><br />";
 }
这是Joomla站点的一部分,JURI:root和JPATH_root提供了服务器的绝对位置。Opera解析URL的方式我怀疑我逃避斜杠的方式有问题。但是,当我尝试使用/而不是/时,图像没有出现在任何浏览器中


编辑:正如你从Zannjaminderson的回答中所看到的,这个问题是以一种类似于脸掌的方式解决的。

如果你愿意,可以叫我noob,但我注意到您正在测试文件$imagetest,然后使用$image作为图像的源…您是否应该使用您测试的文件/测试您正在使用的文件?

您不需要转义斜杠。当您使用/它为每个图像生成什么样的地址?什么平台?

%5C是“\”字符的URL编码值。你在哪个站台上跑步?Windows还是Linux?我目前正在Windows上运行,但希望该站点也能在Linux上运行。Greg正在测试本地文件系统,查看该文件是否存在,然后传递公共URI。据我所知,JURI:ROOT提供了根URI,而JPATH_ROOT提供了应用程序的根地址,这就是我这样设置它的原因。不过Will会更好地解释我的思考过程;我会同意你的答案是正确的,因为你让我思考了结构,当我尝试使用&47;我把它放错线了。所以,谢谢你间接地说出我的白痴。我很高兴以一种奇怪和间接的方式来帮助你——也谢谢你的澄清,威尔。我没有叫我n00b,这是在生产和使用47英镑;我设法解决了这个问题。