Notez que main_page//0
est un non-terminal, non un prédicat. Pour appeler vos prédicats de base de données depuis la main_page//0
, vous devez écrire quelque chose comme :
main_page -->
{create_db_connect,
use_database,
query_to_database(X),
disconnect_database},
html(div('id="tab_c2"', p('~w')-[X])).
Le {}/1
construct vous permet d'appeler des prédicats à partir (du corps des) règles de grammaire. Sans cela, create_db_connect
et les autres seraient interprétés comme des appels à d'autres non-terminaux (create_db_connect//0
, ...).
En règle générale, les non-terminaux sont développés en prédicats en ajoutant deux arguments. D'où les avertissements que vous avez :
Warning: create_db_connect/2, which is referenced by
Warning: /root/prologDev/el.pl:56:17: 1-st clause of main_page/2