|
Smarty
WARNING: All discussion is moving to https://reddit.com/r/smarty, please go there! This forum will be closing soon. |
|
View previous topic :: View next topic |
Author |
Message |
antonin Smarty n00b
Joined: 14 Sep 2006 Posts: 1
|
Posted: Sat Nov 04, 2006 3:11 pm Post subject: foreach dans foreach : requêtes et sous-requêtes |
|
|
Bonjour,
Je n'arrive pas à trouver comment faire une sous requête dans une autre requête. Je m'explique :
Je fais des requêtes a une base Access via ODBC, celle-ci sont de la forme :
Code: |
$koa_conn=odbc_connect($database,$login,$password);
if (!$koa_conn)
{exit("Connection Failed: " . $koa_conn);}
//sql gest
$koa_fetch_list=odbc_exec($koa_conn, $requete);
if (!$koa_fetch_list)
{exit("Error in SQL");}
while($row_en_list[] = odbc_fetch_array($koa_fetch_list, ODBC_ASSOC));{
array_pop($row_en_list);
$smarty->assign('row_en_list', $row_en_list);}
//terminaison de connexion
odbc_close($koa_conn);
|
Ensuite, j'affiche les données avec foreach :
Quote: |
{foreach from=$row_en_list item=row_en_list}
code html à parser
{/foreach}
|
J'aimerai maintenant inclure dans cette requête une sous requête dépendante de la première. En récupérant par exemple la valeur du champs ID dans une variable de manière à faire une une requête du type :
Quote: | 'SELECT Champs1 FROM TABLE Where ChampsID = ' . $ID .' ' |
Le problème, c'est que je ne comprends pas comment récupérer la valeur d'un champs spécifique dans la page PHP ( Pour ma requête ODBC, si j'ai la table1, table2 et la table3, comment récupérer dans une variable php les valeurs de ces champs ? ) et est-il possible de faire un foreach dans un foreach ? ( je n'ai pas réussi )
J'y arrive avec TPLN ( si cela peut éclaircir ma demande )
Code: |
$TPLN->DbConnect();
$TPLN->DoQuery( $requete );
$query_index = $TPLN->GetQueryNb();
while($row = $TPLN->DBFetchAssoc()) {
//....code php....
// ex : $TPLN->parse('bloc1.champs1',$row['ID');
//sous requête
$TPLN->doquery( select * from table2 where table2.id={$row['ID']}); //sous requete
while($row2 = $TPLN->DBFetchAssoc()){
$TPLN->parse('bloc1.bloc1T.champs2',$variable_qui_remplace_le_champs_de_la_sous_requete);
$TPLN->loop('bloc1.bloc1T'); }
}
|
et a coté, j'ai mon fichier (x)html avec mes blocs
Quote: |
<bloc::bloc1>
<!-- Code a parser de la requête 1 -->
<bloc::bloc1T>
<!-- Code a parser de la sous requête -->
</bloc::bloc1T>
</bloc::bloc1>
|
J'aimerai faire la même chose avec smarty.
Toute aide est bienvenue
Merci. |
|
Back to top |
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|