-1

我正在使用一个带有名为 display.php 的页面的购物车。当您浏览导航时,此页面会重复调用,始终调用自身,但会查询新的、更具体的内容。我正在尝试制作将提供指向前几页的链接的面包屑,但事实证明这很棘手。

display.php 的这一部分检索查询用来查找内容的“id”和前一个面包屑字符串的面包屑。“id”总是添加到面包屑字符串中。

$id = $_GET['id'];
$breadcrumbs=$_GET['breadcrumbs'];
$breadcrumbs = $breadcrumbs." > ".$id;
echo $breadcrumbs

由于 id 变量用于查询事物,因此会生成链接以重新访问 display.php,但要查询新事物并带上面包屑字符串。 <a href="http://www.myurl.com/display.php?id='.$name.'&depth='.$sub_level.'&breadcrumbs='.$breadcrumbs.'"><img src="imagen/logo1.jpg" alt="" width="100" height="100" /><br>'. $name . '</a>

每次我进入一个新页面时,面包屑都会清晰地显示出来,但是我怎样才能安全地将这些字符串语句更改为链接呢?不能安全地在其中携带另一根绳子。我认为如果我用 > 字符作为分隔符来分解面包屑字符串是可能的。我该如何解决这个问题,以便它在面包屑字符串中显示漂亮的链接?

    $breadlist = explode(" > ", $breadcrumbs);

    $linkarray = array();
    foreach $breadlist as $breadlink
    {
        $linkarray($j) = "<a href=display.php?id=".$breadlink($j)."?breadcrumbs=".$breadcrumbs.">".$breadlist($j)."";
    };
4

1 回答 1

1

两个明显的问题(在其他一些小修复中):

  1. 你需要urlencode()你的网址。
  2. 您需要使用 而[]不是访问数组()

这是一个帮助您入门的示例:

$breadlist = explode(" > ", $breadcrumbs);

$linkarray = array();
foreach( $breadlist as $breadlink)
{
    $url = 'display.php?id=' . $breadlink . '&breadcrumbs='.$breadcrumbs;
    $linkarray[] = '<a href="' . urlencode( $url) . '">' . $breadlink . '</a>';
}
于 2012-07-13T17:09:41.293 回答