Bonjour à tous,
Je sèche depuis quelques jours sur un problème dont je sais qu'il y a une
solution, mais je ne la trouve pas. Qui peut m'aider?
J'utilise SPIP 1.8.3, et suis contraint de m'y tenir à court terme.
J'ai ajoutté une nouvelle table dans la DB de SPIP; Je l'ai appelé
event_fest.
Je l'ai ensuite déclarée das mes_fonctions.php3.
J'ai utilisé la boucle
<BOUCLE_LIST_EVS(EVENT_FEST) >
#ID_EV ... #NOM_EV <br/>
</BOUCLE_LIST_EVS>
et elle fonctionne bien.
Je voudrais maintenant effectuer un tri croissant sur la valeur du champ
nom_ev.
J'ai donc modifié la boucle comme suit:
<BOUCLE_LIST_EVS(EVENT_FEST) {tri par nom_ev} >
#ID_EV ... #NOM_EV <br/>
</BOUCLE_LIST_EVS>
Mais j'ai le message suivant:
"Erreur(s) dans le squelette skeleton_adv/include_onglet2.html, Erreur de
compilation"
J'ai lu dans "les cahiers du programeur SPIP de Yann Forgerit" qu'il faut
déclarer les variables nécessaires dans mes_fonctions.php3 en s'inspirant de
inc-compilo-api.php3.
C'est là que je cale: Je ne suis pas sûr de ce qu'il faut rajouter. Voici
donc ce que j'ai mis:
//========================================================================
include ('ecrire/inc_serialbase.php3');
global $tables_principales;
//========================================================================
$tables_principales['event_fest'] = array(
'field' => array(
"id_ev" => "bigint(21)",
"nom_ev" => "text NOT NULL",
"adr_lieu" => "text NOT NULL",
"cp_lieu" => "text NOT NULL",
"ville_lieu" => "text NOT NULL",
"pays_lieu" => "text NOT NULL"
),
'key' => array("PRIMARY KEY" => "id_ev" )
);
//========================================================================
function boucle_EVENT_FEST($id_boucle, &$boucles) {
$boucle = &$boucles[$id_boucle];
$id_table = $boucle->id_table;
$boucle->from[] = "event_fest AS $id_table";
return calculer_boucle($id_boucle, $boucles);
}
//========================================================================
include ('inc-compilo-api.php3');
global $table_des_tables;
global $table_primary;
$table_primary['event_fest']='id_ev';
//$table_des_tables['event_fest']='event_fest';
//========================================================================
j'ai egalement mis la dernière ligne en commentaire, car sinon, j'ai
l'erreur suivante:
Erreur(s) dans le squelette<br />
</li><ul>
<li>Table SQL « event_fest » inconnue,
<small>'_LIST_EVS'</small><br /></li>
<li>Table SQL « event_fest » inconnue,
<small>'_LIST_EVS'</small><br /></li>
<li>Table SQL « event_fest » inconnue,
<small>'_LIST_EVENTS'</small><br /></li>
<li>Table SQL « event_fest » inconnue,
<small>'_LIST_EVENTS'</small><br /></li>
<li>Table SQL « event_fest » inconnue,
<small>'_LIST_EVENTS'</small><br /></li>
</ul></ul>
Qui peut m'aider?
C'est assez urgent car je devrais pour bien faire rendre cela opérationnel
dès demain.
Merci en tout cas à tous ceux qui pourraient éclairer ma lanterne.
Christian.
Ben... Je suis heureux... J'ai trouvé ce qui coinçait:
1/ Erreur dans la syntaxe du critère de tri: j'avais écrit {tri par nom_ev}
au lieu de {par nom_ev}
2/ En ce qui concerne les lignes inspirées de inc-compilo-api.php3, il
suffisait d'ajouter la ligne
$table_primary['event_fest']='id_ev';
En tout cas, cela marche maintenant...
Merci quant même s'il y en a qui cherchaient...
Christian.
"Christian Hovine" <chr.hovine@swing.be> a écrit dans le message de news:
eva52c$i8g$1@sea.gmane.org...
Bonjour à tous,
Je sèche depuis quelques jours sur un problème dont je sais qu'il y a une
solution, mais je ne la trouve pas. Qui peut m'aider?
J'utilise SPIP 1.8.3, et suis contraint de m'y tenir à court terme.
J'ai ajoutté une nouvelle table dans la DB de SPIP; Je l'ai appelé
event_fest.
Je l'ai ensuite déclarée das mes_fonctions.php3.
J'ai utilisé la boucle
<BOUCLE_LIST_EVS(EVENT_FEST) >
#ID_EV ... #NOM_EV <br/>
</BOUCLE_LIST_EVS>
et elle fonctionne bien.
Je voudrais maintenant effectuer un tri croissant sur la valeur du champ
nom_ev.
J'ai donc modifié la boucle comme suit:
<BOUCLE_LIST_EVS(EVENT_FEST) {tri par nom_ev} >
#ID_EV ... #NOM_EV <br/>
</BOUCLE_LIST_EVS>
Mais j'ai le message suivant:
"Erreur(s) dans le squelette skeleton_adv/include_onglet2.html, Erreur de
compilation"
J'ai lu dans "les cahiers du programeur SPIP de Yann Forgerit" qu'il faut
déclarer les variables nécessaires dans mes_fonctions.php3 en s'inspirant
de inc-compilo-api.php3.
C'est là que je cale: Je ne suis pas sûr de ce qu'il faut rajouter. Voici
donc ce que j'ai mis:
//========================================================================
include ('ecrire/inc_serialbase.php3');
global $tables_principales;
//========================================================================
$tables_principales['event_fest'] = array(
'field' => array(
"id_ev" => "bigint(21)",
"nom_ev" => "text NOT NULL",
"adr_lieu" => "text NOT NULL",
"cp_lieu" => "text NOT NULL",
"ville_lieu" => "text NOT NULL",
"pays_lieu" => "text NOT NULL"
),
'key' => array("PRIMARY KEY" => "id_ev" )
);
//========================================================================
function boucle_EVENT_FEST($id_boucle, &$boucles) {
$boucle = &$boucles[$id_boucle];
$id_table = $boucle->id_table;
$boucle->from = "event_fest AS $id_table";
return calculer_boucle($id_boucle, $boucles);
}
//========================================================================
include ('inc-compilo-api.php3');
global $table_des_tables;
global $table_primary;
$table_primary['event_fest']='id_ev';
//$table_des_tables['event_fest']='event_fest';
//========================================================================
j'ai egalement mis la dernière ligne en commentaire, car sinon, j'ai
l'erreur suivante:
Erreur(s) dans le squelette<br />
</li><ul>
<li>Table SQL « event_fest » inconnue,
<small>'_LIST_EVS'</small><br /></li>
<li>Table SQL « event_fest » inconnue,
<small>'_LIST_EVS'</small><br /></li>
<li>Table SQL « event_fest » inconnue,
<small>'_LIST_EVENTS'</small><br /></li>
<li>Table SQL « event_fest » inconnue,
<small>'_LIST_EVENTS'</small><br /></li>
<li>Table SQL « event_fest » inconnue,
<small>'_LIST_EVENTS'</small><br /></li>
</ul></ul>
Qui peut m'aider?
C'est assez urgent car je devrais pour bien faire rendre cela opérationnel
dès demain.
Merci en tout cas à tous ceux qui pourraient éclairer ma lanterne.
Christian.
--------------------------------------------------------------------------------