Zum einen kannst du
Code: Alles auswählen
<we:listview type="sql" select=".." from=".." where=".." order="..">
<we:repeat>
<we:field name="xx"/>
<we:repeat>
</we:listview>
nutzen - WE macht an dieser Query NICHTS - d.h. du bist für die Query selbst zuständig. Er stellt dir aber die Daten in Altbekannter WE-Manier zur Verfügung. Dürfte die sicherste Variante sein. (ab WE 8.0.3)
WE stellt dir per se eine DB-Verbindung zur Verfügung, die du in
$GLOBALS['DB_WE']
findest. Sofern du eine Query absetzt und die Resultate verarbeitest, kannst du das direkt verwenden. Alternativ kannst du eine neue DB Verbdindung erstellen - WE macht das recht geschickt und holt nur eine neue wenn nötig:
Einzelnen Wert abfragen
Mehrere Werte
Variante 1:
Code: Alles auswählen
$db=new DB_WE();
$a_results=[];
$db->query('SELECT * FROM MYTable');
while($db->next_record()){
//nur einzelnes Feld
$a_result[]=$db->f('field');
}
Variante 2:
Code: Alles auswählen
$db=new DB_WE();
$a_results=[];
$db->query('SELECT * FROM MYTable');
while($db->next_record()){
//ganze Zeile
$a_result[]=$db->getRecord();
}
Variante 3:
Code: Alles auswählen
$db=new DB_WE();
$a_results=$db->getAllq('SELECT * FROM MYTable');
Variante 4:
(ID wird als Index im Resultat benutzt)
Code: Alles auswählen
$db=new DB_WE();
$a_results=$db->getAllFirstq('SELECT ID,m.* FROM MYTable m');
Am besten du schaust mal in die Klasse we_database_base, die Klasse ist recht stabil, was die API angeht - aber klar es kann auch hier mal kleinere Änderungen geben.