De inhoud van de selectie van een SPIP-lus wordt weergegeven met behulp van bakens. Wanneer van een tabel een SQL-veld "x" heeft, kan SPIP de inhoud van dat veld weergeven met behulp van de syntax
#X
.
<BOUCLE_mijnlus(TABEL)>
#X - #NAAM_VAN_SQL_VELD - #NIETBESTAAND_VELD<br />
</BOUCLE_mijnlus>
SPIP zal geen SQL query maken voor ALLE kolommen van de tabel (
SELECT * ...
) om de gevraagde gegevens op te halen, maar zal elke keer een specifiek data request maken - in dit geval is dat
SELECT x, naam_van_sql_veld FROM spip_tabel
.
Wanneer een veld niet bestaat in de SQL tabel, zoals "nietbestaand_veld" in ons voorbeeld hierboven, zal SPIP het niet invoegen in de query, maar zal proberen om een waarde voor het veld te vinden uit een omringende lus - als die er zijn. Als er geen omringende lus is met zo’n veld, dan kijkt SPIP naar de omgeving, net alsof je
#ENV{nietbestaand_veld}
had geschreven.
Voorbeeld
We nemen het voorbeeld van een SQL tabel met de naam "katten" die uit % kolommen bestaat: "id_kat", "ras", "naam", "leeftijd", "kleur". We kunnen de inhoud van die tabel tonen met:
<B_katten>
<table>
<tr>
<th>Naam</th><th>Leeftijd</th><th>Ras</th>
</tr>
<BOUCLE_katten(KATTEN){par naam}>
<tr>
<td>#NAAM</td><td>#LEEFTIJD</td><td>#RAS</td>
</tr>
</BOUCLE_katten>
</table>
</B_katten>
Wanneer het automatisch het skelet analyseert, zal SPIP begrijpen dat het de
naam
,
leeftijd
en
ras
velden uit de SQL tabel met de naam
katten
moet ophalen. Maar de niet benodigde velden zullen niet worden opgevraagd (in dit geval
id_kat
en
kleur
), wat de belasting van de database server beperkt.