Smarty en foreach
Derk Janssen
21/04/2011 13:15:33Hallo allemaal ik ben al tijdje bezig met smarty.
Ik heb alleen een vraagje.
Als ik een dubbel while heb bv met mysql hoe doe je dat op de juiste manier?
Ik heb namelijk het gevoel dat ik een omslachtige manier gebruik.
Hier onder een voorbeeld hoe ik het nu.
Zou iemand mijn kunnen vertellen hoe het wel moet?
Ik heb alleen een vraagje.
Als ik een dubbel while heb bv met mysql hoe doe je dat op de juiste manier?
Ik heb namelijk het gevoel dat ik een omslachtige manier gebruik.
Hier onder een voorbeeld hoe ik het nu.
Zou iemand mijn kunnen vertellen hoe het wel moet?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<?php
$query = tep_db_query("SELECT id, name FROM users");
while($row = tep_db_fetch_array($query)){
$smarty->append('variable0',$row);
$query1 = tep_db_query("SELECT friends_id FROM friends WHERE friends_from=$row['id']");
while($row = tep_db_fetch_array($query1)){
$smarty->append('variable1',$row);
}
}
?>
$query = tep_db_query("SELECT id, name FROM users");
while($row = tep_db_fetch_array($query)){
$smarty->append('variable0',$row);
$query1 = tep_db_query("SELECT friends_id FROM friends WHERE friends_from=$row['id']");
while($row = tep_db_fetch_array($query1)){
$smarty->append('variable1',$row);
}
}
?>
PHP hulp
22/12/2024 06:20:14Ikzelf heb ook wel eens zitten stoeien met twee while-loops en Smarty, en in dit topic kan je lezen hoe en wat :-)
In ieder geval maak ik een mooie multidimensionale array van het hele spul, die je dan makkelijk door kan lopen (al dan niet recursief).
http://www.phphulp.nl/php/forum/topic/multidimensionale-array-maken-voor-smarty/77372/
Bijbehorende template:
Die $contact var is een beetje dom gekozen. Komt door ge-copy-paste uit de Smarty manual.
In ieder geval maak ik een mooie multidimensionale array van het hele spul, die je dan makkelijk door kan lopen (al dan niet recursief).
http://www.phphulp.nl/php/forum/topic/multidimensionale-array-maken-voor-smarty/77372/
Bijbehorende template:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{foreach name=categorie item=contact key=naam from=$news_categories}
<h1>{$naam}</h1>
<table class="TableList tablesorter">
<thead>
<tr>
<th>Titel</th>
<th>Auteur</th>
<th>Datum</th>
</tr>
</thead>
{foreach key=key item=item from=$contact}
<tbody>
<tr>
<td><a href="/news/{$item.id}">{$item.title}</a></td>
<td>{$item.auteur}</td>
<td>{$item.date_posted}</td>
</tr>
</tbody>
{/foreach}
</table>
{/foreach}
<h1>{$naam}</h1>
<table class="TableList tablesorter">
<thead>
<tr>
<th>Titel</th>
<th>Auteur</th>
<th>Datum</th>
</tr>
</thead>
{foreach key=key item=item from=$contact}
<tbody>
<tr>
<td><a href="/news/{$item.id}">{$item.title}</a></td>
<td>{$item.auteur}</td>
<td>{$item.date_posted}</td>
</tr>
</tbody>
{/foreach}
</table>
{/foreach}
Die $contact var is een beetje dom gekozen. Komt door ge-copy-paste uit de Smarty manual.
Gewijzigd op 21/04/2011 13:36:54 door - Ariën -