Ecrire du code perl dans HTML [Linux]
Fermé
nanouss_nanouss
Messages postés
14
Date d'inscription
dimanche 20 février 2011
Statut
Membre
Dernière intervention
12 février 2013
-
3 févr. 2012 à 11:31
[Dal] Messages postés 6203 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 29 janvier 2025 - 4 févr. 2012 à 21:23
[Dal] Messages postés 6203 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 29 janvier 2025 - 4 févr. 2012 à 21:23
A voir également:
- Ecrire du code perl dans HTML [Linux]
- Voici du code ascii : - Guide
- Code puk bloqué - Guide
- Ecrire en gras sur whatsapp - Guide
- Ecrire en miroir - Guide
- Code telephone oublié - Guide
5 réponses
[Dal]
Messages postés
6203
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
29 janvier 2025
1 099
Modifié par [Dal] le 3/02/2012 à 12:35
Modifié par [Dal] le 3/02/2012 à 12:35
Salut nanouss_nanouss,
C'est quoi un fichier ".dtl" ?
Si tu as Apache, et que tu veux lui faire exécuter du Perl, tu peux le faire avec CGI, ou mieux, avec le module mod_perl de Apache (à installer si ce n'est pas fait).
Tu peux alors faire des trucs comme cela :
et "mapage.html" est exécutée par Apache mod_perl pour restituer le code html dynamique.
Bien sûr, mieux vaut modulariser le Header, utiliser les fonctions mod_perl pour envoyer les headers http, modulariser Footer, séparer le code Perl du code Html, etc. C'est juste un exemple pour te donner une idée :-)
Dal
C'est quoi un fichier ".dtl" ?
Si tu as Apache, et que tu veux lui faire exécuter du Perl, tu peux le faire avec CGI, ou mieux, avec le module mod_perl de Apache (à installer si ce n'est pas fait).
Tu peux alors faire des trucs comme cela :
$ cat mapage.html #!/usr/bin/perl use strict; use warnings; my $date = localtime(); print <<EOF Content-Type: text/html <html> <head><title>My page about date</title></head> <body> <h3>Today's date is</h3> <p>$date</p> </body> </html> EOF;
et "mapage.html" est exécutée par Apache mod_perl pour restituer le code html dynamique.
Bien sûr, mieux vaut modulariser le Header, utiliser les fonctions mod_perl pour envoyer les headers http, modulariser Footer, séparer le code Perl du code Html, etc. C'est juste un exemple pour te donner une idée :-)
Dal
nanouss_nanouss
Messages postés
14
Date d'inscription
dimanche 20 février 2011
Statut
Membre
Dernière intervention
12 février 2013
3 févr. 2012 à 13:57
3 févr. 2012 à 13:57
Merci pour votre réponse :)
.DTL: Dynamic Template Language
je veux integrer directement le code Perl dans HTML.
.DTL: Dynamic Template Language
je veux integrer directement le code Perl dans HTML.
[Dal]
Messages postés
6203
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
29 janvier 2025
1 099
3 févr. 2012 à 17:08
3 févr. 2012 à 17:08
Salut nanouss_nanouss,
Cela ne serait pas le "langage" de template propre au logiciel de gestion de tickets OTRS ?
Dal
Cela ne serait pas le "langage" de template propre au logiciel de gestion de tickets OTRS ?
Dal
nanouss_nanouss
Messages postés
14
Date d'inscription
dimanche 20 février 2011
Statut
Membre
Dernière intervention
12 février 2013
3 févr. 2012 à 21:24
3 févr. 2012 à 21:24
alors DTL est propre à OTRS !!!
Oui c'est exactement ça, je suis entrain de faire des modifications sur OTRS.
Merci pour l'information
Oui c'est exactement ça, je suis entrain de faire des modifications sur OTRS.
Merci pour l'information
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
[Dal]
Messages postés
6203
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
29 janvier 2025
1 099
4 févr. 2012 à 21:23
4 févr. 2012 à 21:23
Salut nanouss_nanouss,
Oui, le "DTL" de OTRS est propre à OTRS. Je n'ai jamais pratiqué ce logiciel, mais en cherchant sur leur site, on trouve la documentation suivante sur la syntaxe de leur système de Template :
http://doc.otrs.org/developer/2.0/en/html/c494.html
Le principe est que tu sépares le code Perl du code du template, où tu peux insérer des variables, définir des blocs,... C'est ce que j'en comprend.
Tu ne peux donc pas mettre du Perl dans le Template. C'est exactement le but opposé du fonctionnement du système de template : séparer le code de la forme de présentation.
Pour faire ta boucle et insérer ta boite d'options dynamiques "<option>", je pense que tu dois définir un "block" dans le template. Inspire toi de ce que tu vois là http://doc.otrs.org/developer/2.0/en/html/c494.html#block :
- tu crées un "block" pour tes lignes <option> qui sera répété avec les variables à insérer
- les variables proviendront du contenu d'un hash que tu peut créer dans le module Perl qui sera chargé d'appeler le template, comme indiqué dans l'exemple
Si tu modifies un template existant, ce template doit être appelé par un module Perl qui existe déjà (ou alors tu crées un nouveau module appelant ce Template, je ne sais pas ce que tu fais). Il faut créer ton hash avec les variables à insérer dans ce module.
Dal
Oui, le "DTL" de OTRS est propre à OTRS. Je n'ai jamais pratiqué ce logiciel, mais en cherchant sur leur site, on trouve la documentation suivante sur la syntaxe de leur système de Template :
http://doc.otrs.org/developer/2.0/en/html/c494.html
Le principe est que tu sépares le code Perl du code du template, où tu peux insérer des variables, définir des blocs,... C'est ce que j'en comprend.
Tu ne peux donc pas mettre du Perl dans le Template. C'est exactement le but opposé du fonctionnement du système de template : séparer le code de la forme de présentation.
Pour faire ta boucle et insérer ta boite d'options dynamiques "<option>", je pense que tu dois définir un "block" dans le template. Inspire toi de ce que tu vois là http://doc.otrs.org/developer/2.0/en/html/c494.html#block :
- tu crées un "block" pour tes lignes <option> qui sera répété avec les variables à insérer
- les variables proviendront du contenu d'un hash que tu peut créer dans le module Perl qui sera chargé d'appeler le template, comme indiqué dans l'exemple
Si tu modifies un template existant, ce template doit être appelé par un module Perl qui existe déjà (ou alors tu crées un nouveau module appelant ce Template, je ne sais pas ce que tu fais). Il faut créer ton hash avec les variables à insérer dans ce module.
Dal