Resultaten scheiden op categorienaam

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Snelle Jaap

Snelle Jaap

09/08/2016 16:06:45
Quote Anchor link
Ik heb een lijst met data die word getoond op een pagina. Elk item heeft een category maar zoals mijn code nu is opgebouwd laat hij de hele lijst in 1x zien. Wat ik graag wil is dat de lijst wordt opgesplitst op categorienaam.

Voorbeeld:


test1 (heeft category testing)
test2 (heeft category testing)
test3 (heeft category testing123)

Hoe ik het wil hebben:

testing:
test1
test2

testing123:
test3

Ik heb mijn code nu zo opgebouwd (alleen relevante stukken):

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?
while ($row_items = mysql_fetch_assoc($res_items)) {

    $checklist = '';
    if ($row_items['checkpoints'] != '') {
        $check = explode(',', $row_items['checkpoints']);
        foreach($check as $list) {
            $checklist .= '
            <li class="cataloguslist">
                <i style="color:#e88f41;" class="fa fa-check-square" aria-hidden="true">
            </i> '
.$list.'</li>';
        }
    }


    echo '
    <div class="col-lg-2 col-md-3 col-sm-6 col-xs-6 portf">
      <a class="fancybox" href="../../catalogus/'
.$row_items['afbeelding'].'">
        <div class="gallery-item">
            <div class="image">
                <img src="../../catalogus_icons/'
.$row_items['afbeelding'].'.jpg" alt="" style="border:1px solid #ccc;" class="img-responsive" />
            </div>

            <div class="bottom-info" style="min-height:200px;">
                <div class="name">'
.$row_items['naam'].'</div>
                <ul style="margin-left:35px;margin-top:10px;">'
.$checklist.'</ul>
                <a href="contact.php">
                    <button class="contact_button buttoncontact btn-primary" style="border-radius:2px;">
                        Vraag offerte
                        <span class="icon-mail-alt"></span>
                    </button>
                </a>
                <div class="contactlink">
                    <a href="contact.php">Neem contact op</a>
                </div>
            </div>
        </div>
        </a>
    </div>'
;
}

?>

Het stuk binnen de echo is 1 item. Elk item heeft een waarde 'cat' die correspondeert met de waarde 'id' uit de tabel producten_cats (waarin het id indezelfde rij staat als 'naam', de categorienaam).

Kan iemand me op weg helpen?
 
PHP hulp

PHP hulp

20/04/2024 09:51:53
 
Ramon van Dongen

Ramon van Dongen

09/08/2016 18:06:53
Quote Anchor link
Om het heel simpel uit te leggen kun je het als volgt doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$res_items
= je query(); // hoe je die nu waarschijnlijk ook doet

$categorie = '';
while($row_items = mysqli_fetch_assoc($res_items)){

    // alleen de categorie tonen als die anders is dan daarvoor
    if($row_items['categorie'] !== $categorie){
    echo $row_items['categorie'];
    }


echo $row_items['naam']; // alles wat je nu ook laat zien over het item

$categorie = $row_items['categorie']; // $categorie altijd overschrijven met $row_items['categorie']
}?>


Snap je het principe?
Gewijzigd op 09/08/2016 18:08:20 door Ramon van Dongen
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.