Les scripts CGI peuvent être simples ou complexes. Il peut s'agir de Perl, Java, Python ou n'importe quel langage de programmation. À la base, une application CGI accepte simplement les requêtes via HTTP (généralement un navigateur Web) et renvoie du HTML. Prenons un simple script Perl Hello World CGI et décomposons-le dans sa forme la plus simple.
Script Perl CGI 'Hello World'
#!/usr/bin/perl print "Content-type: text/html\n\n"; print <<HTML; <html> <head> <title>A Simple Perl CGI</title> </head> <body> <h1>A Simple Perl CGI</h1> <p>Hello World</p> </body> HTML exit;
Si vous exécutez ce programme sur la ligne de commande, vous verrez exactement ce qu'il fait, c'est ce que vous on s'y attendrait. Tout d’abord, il imprime la ligne de type de contenu, puis le code HTML brut. Afin de le voir en action dans un navigateur Web, vous devez copier ou télécharger le script sur le serveur Web et vous assurer que les autorisations sont correctement définies (chmod 755 sur les systèmes *nix). Une fois qu'il est correctement configuré, vous devriez pouvoir y accéder et voir la page en direct sur le serveur.
La ligne clé est la première instruction d'impression :
print "Content-type: text/html\n\n";
Cela indique au navigateur que le document après ces deux sauts de ligne sera HTML. Vous devez envoyer un en-tête pour que le navigateur sache quel type de document sera à venir, et vous devez inclure une ligne vide entre l'en-tête et le document réel.
Après l'envoi de l'en-tête, seul le document HTML lui-même doit être envoyé. Dans l'exemple ci-dessus, nous utilisons here-doc pour simplifier l'impression d'un gros bloc de texte brut. Bien sûr, ce n’est pas différent d’avoir un simple document HTML sur le serveur. Le véritable pouvoir de l'utilisation d'un langage de programmation comme Perl pour créer du HTML vient lorsque vous ajoutez une programmation Perl sophistiquée.
Ajouter au script de base
Dans l'exemple suivant, prenons une partie de ce script d'heure et de date et ajoutons-le à une page Web.
#!/usr/bin/perl @months = qw(Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec); @weekDays = qw(Sun Mon Tue Wed Thu Fri Sat Sun); ($second, $minute, $hour, $dayOfMonth, $month, $yearOffset, $dayOfWeek, $dayOfYear, $daylightSavings) = localtime(); $year = 1900 + $yearOffset; $theTime = "$weekDays[$dayOfWeek] $months[$month] $dayOfMonth, $year"; print "Content-type: text/html\n\n"; print <A Simple Perl CGI A Simple Perl CGI
$theTime
HTML exit;
Ce nouveau script CGI insérera la date actuelle dans la page à chaque fois que le script est appelé. En d’autres termes, il devient un document dynamique qui évolue à mesure que la date change, plutôt qu’un document statique.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!