2008-12-16 4 views
0

J'ai une page Web qui a besoin d'afficher une base de données sqlite. En ce moment je crée la page entière dynamiquement par l'intermédiaire de CGI. Cependant, je préfère avoir un fichier html et juste remplir une table dans le fichier avec le contenu de la base de données. Quelle est la meilleure méthode pour le faire? Je suis limité à html, javascript et CGI en C.Architecture de modèle avec CGI

Toute aide est grandement appréciée.

Merci! Tom

Répondre

1

Si votre contenu est mis à jour une fois par jour (ou heure, etc.), vous pouvez programmer le code C en tant qu'application autonome via cron. Il lit dans un fichier de modèle html "en-tête", génère la table à partir de la base de données, puis copie le fichier de modèle "pied de page" html. Ce fichier généré est copié sur l'emplacement du serveur Web souhaité, puis le serveur Web peut simplement servir le fichier HTML.

Si vous n'avez pas cron, vous pouvez déplacer le C dans un code CGI C que vous pouvez appeler manuellement via une URL "cachée" qui génère le fichier HTML de la même manière.

Si la table est mise à jour en permanence, il vous suffit de procéder comme indiqué ci-dessus mais de renvoyer les données à l'utilisateur plutôt que de créer un fichier à utiliser de manière statique. Je suppose que vous n'avez pas accès aux inclusions côté serveur de quelque sorte que ce soit (serveur web intégré?).

0

Combien cela fonctionne-t-il? Avez-vous votre connexion sqlite fonctionnant dans votre code C? Ecrire une application CGI n'est pas difficile, il suffit de sortir vos en-têtes, en particulier Content-Type et de préférence Content-Length (si vous le connaissez), puis de sortir la page. Comme pour un système de modèle, vous pouvez écrire des fichiers html et remplacer certaines balises par le contenu dynamique. Jetez un oeil à certains systèmes de modèles comme Smarty pour une inspiration peut-être.