1

私は自分のサイトにお気に入り機能を作成し、誰かが一緒に行くさまざまなアイテムを選択して、自分のアカウントにお気に入りのパッケージとして保存できるようにしました。すべてのアイテムは、お気に入りの ID 番号を持つお気に入りのテーブルに保存されます。同じ ID 番号を持つものはすべて一緒になります。これは、ログインしている顧客の下に保存されます。

この配列を PHP ページにインポートして、アイテムをライトボックス タイプの外観でグラフィカルに表示しようとしていますが、それらを組み合わせて適切に表示するのに多くの問題が発生しています。

配列とphpコードは以下です。配列は SQL クエリから生成されます。配列 [0] と [1] の項目は、それぞれの画像を一緒に表示できるように組み合わせる必要があります (実際には、画像が重なり合ってパッケージのように見えます。

ここにページへのリンクがあります: https://www.viva-cards.com/products/package-designerログインしないとお気に入りの機能を見ることができません

基本的には同じ fav_seq id を組み合わせる必要がありますが、itm_id、offer_id、inv_type_id、inv_thumbnail_url、および offer_description を区別することはできます。それらには異なる画像などが含まれているためです。私はこれでレンガの壁に頭をぶつけてきました。PHPページでこれを行う方法はありますか、それともSQLクエリの段階で行う必要がありますか? 私は何を間違っていますか?

配列のコードは次のとおりです。

[0] => Array
    (
        [entity_id] => 6
        [itm_id] => 81
        [fav_seq] => 1
        [offer_id] => 1
        [inv_css_tag] => 
        [inv_type_id] => TYPE1
        [inv_thumbnail_url] => image1-thumb.png
        [offer_description] => Offer1
    )

[1] => Array
    (
        [entity_id] => 6
        [itm_id] => 198
        [fav_seq] => 1
        [offer_id] => 1
        [inv_css_tag] => csstag
        [inv_type_id] => TYPE2
        [inv_thumbnail_url] => image2-thumb.jpg
        [offer_description] => Offer2
    )

[2] => Array
    (
        [entity_id] => 6
        [itm_id] => 810
        [fav_seq] => 2
        [offer_id] => 4
        [inv_css_tag] => 
        [inv_type_id] => TYPE1
        [inv_thumbnail_url] => image3-thumb.png
        [offer_description] => Offer4
    )

[3] => Array
    (
        [entity_id] => 6
        [itm_id] => 98
        [fav_seq] => 2
        [offer_id] => 4
        [inv_css_tag] => csstag
        [inv_type_id] => TYPE2
        [inv_thumbnail_url] => image4-thumb.jpg
        [offer_description] => Offer4
    )

これは、表示を生成するためにphpページで使用しているコードです。

<div>
    <h2>Favorites Saved</h2>

    <?php 
    foreach($this->favorite_seq as $favorites){
        if(empty($favorites['fav_seq'])){ 
     // Nothing
    ?>
<?php }else {?>                 
        <div id="favoritesThumbnailWrapper"> <!-- For TYPE1 -->
     <div id="favoritesReferralThumb" class="cardPositionMiddle1">
         <img src="<?= $this->inventory_url . $favorites['inv_thumbnail_url'];?>">
     </div>

     <div id="favoritesPresentationThumb"> <!-- For TYPE2 -->
         <img src="<?= $this->inventory_url . $favorites['inv_thumbnail_url'];?>">
     </div>

     <div id="favoritesOffer"> <!-- For OFFER DESCRIPTION -->
         <span><?= $favorites['offer_description'];?></span>
     </div>

</div>
<?php
    }
}
?>

4

1 に答える 1

0

これは役立つかもしれません:

$favArray = array();
foreach($this->favorite_seq as $favorites){
    if(!empty($favorites['fav_seq'])){
        $favArray[$favorites['fav_seq']][] = $favorites;
    }
}
print_r($favArray);

$favArray次に、レコードを表示するために繰り返します。

于 2013-05-23T06:46:04.990 に答える