1つはヘッダーにあり、もう1つは同じページにある2つのナビゲーションがあります。サブカテゴリをクリックすると、サブカテゴリの特定の製品のテーブル製品からすべてのデータを取得できるようになりました. 私が今持っているのは、すべてのページに含まれているヘッダーページにあるメニューをクリックすると、製品がリストされますが、製品ページにあるメニューはforeachが空であるというエラーを生成します. 他の関数を使用してすべてのサブカテゴリを取得すると、正常に機能しますが、その特定のメインカテゴリに属するサブカテゴリのみを取得したいと考えています。以下のコードはより理にかなっています。
ヘッダー ページ:
<?php
error_reporting(E_ALL);
ini_set('display_errors','1');?>
<?php require_once("initi.php");?>
<html>
<head>
<title></title>
<link rel="stylesheet" href="css/reset.css" />
<link rel="stylesheet" href="css/main.css" />
<link rel="stylesheet" href="css/footer.css" />
<script type="text/javascript" src="/ghaniya.com/javascript/jqu.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(".logbtn").click(function(){
$("#login2").hide("show");
$("#login1").slideToggle("slow");
$(this).toggleClass("active");
});
$(".logbtn2").click(function(){
$("#login1").hide("show");
$("#login2").slideToggle("slow");
$(this).toggleClass("active");
});
});
</script>
<style type="text/css">
div#login1{
background-color:#efebee;
margin:0 auto;
width:100%;
display:none;
height:100px;
}
div#login2{
background-color:#f5dce4;
margin:0 auto;
width:100%;
display:none;
height:100px;
}
.size{width:960px; }
.flotl{float:left; font-size:11px; text-decoration:none; height:30px; margin-left:20px;}
div#centerl{ width:960px; margin:0 auto; }
</style>
</head>
<body>
<div id="head">
<div class="size center">
<img src="img/logosmall.png">
<ul id="mainLink">
<li><a class="logbtn">Women</a></li><li><a class="logbtn2" href="#">man</a></li><li><a href="#">Beauty</a></li><li><a href="">Gifts</a></li><li><a href="">Perfumes</a></li>
</ul>
<div id="loginBox">
<h3>REGISTER | SIGN IN</h3>
</div>
<div id="search">
<input type="submit"/><input type="text" value="Search"/>
</div>
<div id="bag"></div>
</div>
</div>
<div id="login1" >
<div id="centerl">
<ul class="flotl" >
<?php
$cata = Catagory::find_all();
foreach($cata as $catag){?>
<li><a href="/ghaniya.com/product.php?catid=<?php echo $catag->catagory_id;?>"><?php echo $catag->name; ?></a></li>
<?php }?>
</ul>
</div>
</div>
製品ページ:
<?php require_once("includes/head.php"); ?>
<?php
$cata_id = "";
$subcat ="";
if(isset($_GET['catid']))
{
$cata_id = $_GET['catid'];
$product = Product::find_by_cata_id($cata_id);
}
elseif(isset($_GET['subcat']))
{
$subcat =$_GET['subcat'];
$subcat = SubCata::find_by_cata_id(1);
print_r($subcat);
}
?>
<div class="cBoth"></div>
<div id="contentEveryWhere" class="center">
<div id="cata">
<div id="leftNoticeBoard"></div>
<ul id="catagories">
<h1>CLOTHING</h1>
<?php foreach($subcat as $sub){ ?>
<li><a href="product.php?subcat=<?php echo $sub->subcata_id; ?>"><?php echo $sub->name; ?></a></li>
<?php } ?>
</ul>
</div>
<div id="products">
<div id="catatitle">
<ul>
<li>Home ></li><li>Women ></li><li>Coat<li>
</ul>
<h1>Coat</h1>
<p class="floatl">Sort items by Price: High | Low View as: <img src="#" alt="icon png"/> |<img src="#" alt="icon png"/></p>
</div>
<ul id="product">
<?php $product = Product::find_by_cata_id($cata_id);?>
<?php foreach($product as $pro){?>
<?php $image = Image::find_by_product_id( $pro->product_id);?>
<li>
<?php if(isset($image->filename)){ ?>
<img src="/ghaniya.com/img/products/<?php echo $image->filename;?>"/>
<?php } ?>
<h2><?php echo $pro->name;?></h2>
<h3> <?php echo $pro->product_desc;?></h3>
<h4><?php echo $pro->price;?></h4>
</li>
<?php } ?>
</ul><!--end of product list-->
</div> <!--end of products div-->
</div><!--end of contentEveryWhere div-->
<div class="cBoth"></div>
<?php require_once("includes/footer.php"); ?>
警告: /Users/mughery/Website/ghaniya.com/product.php の 25 行目の foreach() に無効な引数が指定されました