1

各メイン カテゴリのいくつかのメイン カテゴリとサブカテゴリがあります。ドロップダウン リストにメイン カテゴリが含まれています。メイン カテゴリを選択すると、サブカテゴリ ドロップダウン リストにそのメイン カテゴリのサブカテゴリが表示されます。これには次のコードを使用しています。 、しかし、これはサブカテゴリボックスにヘッダーとフッターを含むページ全体が含まれていることを示しています...

<select name="main_category" id="main_category" onchange="showSubCategory(this.value)">
        <option>--Select--</option>
</select>


<script type="text/javascript">
        function showSubCategory(str)
        {

            if (str.length==0)
            {
                document.getElementById("txtHint").innerHTML="";
                return;
            }
            if (window.XMLHttpRequest)
            {// code for IE7+, Firefox, Chrome, Opera, Safari
                xmlhttp=new XMLHttpRequest();
            }
            else
            {// code for IE6, IE5
                xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlhttp.onreadystatechange=function()
            { 
                if (xmlhttp.readyState==4 && xmlhttp.status==200)
                {
                    alert(xmlhttp.responseText);
                    document.getElementById("subcategory").innerHTML=xmlhttp.responseText;
                }
            }
            xmlhttp.open("GET","index.php?main_page=getsubcategory&cid="+str,true);
            xmlhttp.send();
        }
    </script>

tpl_subcategory_default.php には含まれています

<?php
$cid=$_GET['cid'];
$sql="select cd.categories_name, cd.categories_id
                             from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd
                             where c.parent_id = '" . (int) $_GET['cid'] . "'
                             and c.categories_id = cd.categories_id
                             and c.categories_status= 1";

$r=mysql_query($sql);

while($row=mysql_fetch_array($r))

{
echo "<option value=$row[categories_id]>$row[categories_name]</option>";
}

?>
4

2 に答える 2

0

ヘッダー、フッターなどを削除するには、tpl_main_page.php をオーバーライドできます。このディレクトリ /includes/templates/custom template に移動します。あなたの情報によると、main_page=getsubcategory ページを作成しました。このディレクトリの下に getsubcategory という名前のフォルダーを作成します。次に、includes/templates/custom template/common/ から tpl_main_page.php をコピーして、/includes/templates/your custom template/getsubcategory に貼り付けます。次に、tpl_main_page.php ファイルで以下の変更を行います。

if (in_array($current_page_base,explode(",",'getsubcategory')) ) {

    $flag_disable_left = true;
    $flag_disable_header = true;
    $flag_disable_footer = true;

}
于 2015-07-24T07:31:53.853 に答える
0

index.php?main_page=foo を介して「ページ」にアクセスしているが、通常のテンプレート システム出力を独自のページ固有の出力に置き換えるアーキテクチャを追加していないため、ヘッダーとフッターを含むページ全体が表示されています。 : すべてのページに表示される通常のものを最初に呼び出さずに、出力に直接ジャンプします。

/includes/modules/pages/subcategory/header_php.php ファイルで何を行ったか、またはファイルを作成したかどうかを知らずに、質問に正確に回答することはできません。tpl_subcategory_default.php に入れたコードは、上記の header_php.php ファイルに入り、最後に die() ステートメントが続き、探していると思われるものと同じことを達成する可能性があります。

これまでに行ったことについてより多くの情報を提供していただけると、質問に完全に回答することがより簡単になります。

于 2012-05-13T09:50:30.530 に答える