www.webdeveloper.com
Results 1 to 6 of 6

Thread: end div inside foreach

  1. #1
    Join Date
    Apr 2012
    Location
    Egypt
    Posts
    21

    end div inside foreach

    hi there
    I'll start with my code

    PHP Code:
    <?php if(isset($cats)): ?>
        <?php foreach($cats as $cat): ?>
    <div class="section-div">
        <div class="box-container paging"></div>
        <div class="sec-div-title">
            <h2><?php echo $cat->description?></h2>
        </div>
        <div class="sec-div-a">
            <div class="box-container">
                <div id="TabbedPanels<?php echo $cat->cat_id?>" class="TabbedPanels">
                    <ul class="TabbedPanelsTabGroup">
                        <li class="TabbedPanelsTab" tabindex="0">1</li>
                        <li class="TabbedPanelsTab" tabindex="0">2</li>
                        <li class="TabbedPanelsTab" tabindex="0">3</li>
                    </ul>
                    <div class="TabbedPanelsContentGroup">
                            <?php $i 1?>
                            <?php foreach($sites as $site): ?>
                            <?php if($site->cat_id == $cat->cat_id): ?>
                            <?php if($i == || $i == 11 || $i == 21): echo '<div class="TabbedPanelsContent">'; endif; ?>
                            <a href="<?php echo $site->link?>">
                                <img src="<?php echo base_url().'assets/uploads/sites_logo/'.$site->photo?>"  alt="" width="80" height="30"/>
                            </a>
                            <?php if($i == 10 || $i == 20 || $i == 30): echo '</div>'; endif; ?>
                            <?php $i++; ?>
                            <?php endif; ?>
                            <?php endforeach; ?>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="section-div-btm"></div>
    </div>
        <?php endforeach; ?>
    <?php 
    endif; ?>
    in this section in my code
    PHP Code:
    <?php $i 1?>
    <?php 
    foreach($sites as $site): ?>
        <?php if($site->cat_id == $cat->cat_id): ?>
            <?php if($i == || $i == 11 || $i == 21): echo '<div class="TabbedPanelsContent">'; endif; ?>
                <a href="<?php echo $site->link?>">
                    <img src="<?php echo base_url().'assets/uploads/sites_logo/'.$site->photo?>"  alt="" width="80" height="30"/>
                </a>
            <?php if($i == 10 || $i == 20 || $i == 30): echo '</div>'; endif; ?>
            <?php $i++; ?>
        <?php endif; ?>
    <?php 
    endforeach; ?>
    here I get the sites under category
    I open the div if only $i = 1 or 11 or 21
    and close the div if $i = 10 or 20 or 30
    but I want to close the div if there is no more sites under the category regardless of the value of $i
    how can I do this??

  2. #2
    Join Date
    Aug 2012
    Posts
    155
    You need to find out how many records you have from your query and then compare $i to that number. I can't see your query so can't give exact help, but say you have got the num_rows and allocated that number to a variable $total_rows, you would just add this in
    PHP Code:
    if($i == 10 || $i == 20 || $i == 30 || $i == $total_rows): echo '</div>'; endif; 
    You can also do a much more simple if statement by checking for a remainder when $i is divided by 10 (i.e. if 10 divided by 10 = 0 then you are on the 10th record):

    PHP Code:
    if ($i%10 == || $i == $total_rows

  3. #3
    Join Date
    Apr 2012
    Location
    Egypt
    Posts
    21
    here I have 2 query
    one for the category
    and one for the sites
    the first query is
    PHP Code:
    $query "SELECT `cat_id`,`description` FROM dalil_cats"
    the second is
    PHP Code:
    $sites_query "SELECT `cat_id`,`link`,`photo` FROM dalil"
    if I get the num_rows for the result of $sites_query I'll have the number of all sites
    I view the sites under category
    and I want to close the div in 2 conditions if
    PHP Code:
    $i%10 == && there is no more sites under the category 

  4. #4
    Join Date
    Aug 2012
    Posts
    155
    In which case, why not run your $sites_query within the while / foreach loop for your $query and then you can just get the sites per category (using the category id) and will be able to easily solve your problem.

  5. #5
    Join Date
    Apr 2012
    Location
    Egypt
    Posts
    21
    can you give me an example?

  6. #6
    Join Date
    Aug 2012
    Posts
    155
    Not exactly as I don't have your full code (as in I don't know how or where you are running your queries) but within this
    PHP Code:
    <?php if(isset($cats)): ?> 
        <?php foreach($cats as $cat): ?>
    You would do your query here

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center



Recent Articles