Ik heb een probleem met php en/of smarty. Ik heb namelijk 2 arrays uit een database gehaald, namelijk één met gebruikersnamen en -id's, en één met auto's. Deze twee zijn aan elkaargelinkt via het gebruikersid, 'uid'.
Een deel van de array van de gebruikers is als volgt ($data):
De auto-array ziet er als volgt uit ($cdata):
De array is als volgt opgebouwd:
1: userid, ofwel deze auto behoort bij user2
23: 'carid', deze heb ik nodig voor een linkje
Citroen ax: de auto waar het om gaat.
Ik krijg het alleen niet voor elkaar deze 2 arrays aan elkaar te linken in smarty:
Als het goed is zou er tussen de tweede <td></td> die in de section staat iets als 'Array' moeten komen te staan, echter krijg ik dan een smarty error dat de betreffende variabele niet bestaat.
Nested {section} en nested {foreach} werken hier dus niet, omdat de 'sorting key' in beide gevallen anders is. Het is niet mogelijk om de sorting key hetzelfde te maken, omdat sommige gebruikers geen auto hebben toegevoegd.
Wie kan mij helpen om dit probleem op te lossen?
Alvast bedankt,
Thijs
Een deel van de array van de gebruikers is als volgt ($data):
code:
1
2
3
4
5
6
7
8
9
10
| Array (37) 0 => Array (2) uid => "3" username => "user1 " 1 => Array (2) uid => "1" username => "user2" 2 => Array (2) uid => "2" username => "user3" |
De auto-array ziet er als volgt uit ($cdata):
code:
1
2
3
4
5
6
7
8
| Array (22) 1 => Array (1) 23 => "Citroen AX" 3 => Array (2) 1 => "Kever" 5 => "Peugeot 3008" 5 => Array (1) 2 => "Renault 19" |
De array is als volgt opgebouwd:
1: userid, ofwel deze auto behoort bij user2
23: 'carid', deze heb ik nodig voor een linkje
Citroen ax: de auto waar het om gaat.
Ik krijg het alleen niet voor elkaar deze 2 arrays aan elkaar te linken in smarty:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| {include file="header.tpl" title="Namen- en autolijst"} <h1>Namenlijst met auto's</h1> <table> <tr> <th>Nick</th> <th>Auto('s)</th> </tr> {section name=list loop=$data} <tr> <td>{$data[list].username}</td> <td> {$cdata[{$data[list].uid}]} </td> </tr> {/section} </table> {include file="footer.tpl"} |
Als het goed is zou er tussen de tweede <td></td> die in de section staat iets als 'Array' moeten komen te staan, echter krijg ik dan een smarty error dat de betreffende variabele niet bestaat.
Nested {section} en nested {foreach} werken hier dus niet, omdat de 'sorting key' in beide gevallen anders is. Het is niet mogelijk om de sorting key hetzelfde te maken, omdat sommige gebruikers geen auto hebben toegevoegd.
Wie kan mij helpen om dit probleem op te lossen?
Alvast bedankt,
Thijs
[ Voor 3% gewijzigd door tdw op 24-12-2009 20:38 ]
"There is that sort of assumption by the government that we're all driving around at 8 o'clock in the morning to be really annoying"
~ James May