-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

2 つの明らかな問題 (その他のいくつかの小さな修正の中で):

  1. urlencode()URLが必要です。
  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 に答える