Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

materias:laboratorio_de_lenguajes_ii:lableng2:ejemplos1 [2011/01/24 15:30] (actual)
Línea 1: Línea 1:
 +====== Ejemplos de CGI ======
 +A continuación se puestra algunos ejemplos de CGIs
  
 +
 +Programa base para adivinar un número (Versión Python)
 +<code python>
 +#!/usr/bin/python
 +
 +import random
 +
 +termine=0
 +num = random.randint(0,100)
 +while termine==0:
 +        x = int(raw_input("Deme un numero "))
 +        if num > x:
 +                print "es mas grande"
 +        elif num < x:
 +                print "es mas pequeno"
 +        else:
 +                print "Ok"
 +                termine=1
 +</code>
 +
 +Extracto de una página HTML para capturar datos (número de prueba)
 +<code html>
 +...
 +<form action="adivina.cgi">
 +Deme un numero:  <input name="x">
 +<input type="submit">
 +</form>
 +...
 +</code>
 +
 +
 +Modificación del código del juego de adivinar un número para trabajar sobre Web (Versión Python)
 +**''adivina.cgi''**
 +<code python>
 +#!/usr/bin/python
 +
 +import random
 +import cgi
 +
 +print "Content-Type: text/html\n\n"
 +
 +datos = cgi.FieldStorage()
 +
 +if not datos.has_key("num"):
 +    num = random.randint(0,100)
 +else:
 +    num = int(datos["num"].value)
 +    x = int(datos["x"].value)
 +    if num > x:
 +        print "es mas grande"
 +    elif num < x:
 +        print "<font color=\"red\">es mas pequeno</font>"
 +    else:
 +        print "<h1>Ok</h1>"
 +
 +print """
 +<form action="adivina.cgi">
 +Deme un numero: <input name="x">
 +<input type="hidden" name="num" value="%s">
 +<input type="submit">
 +</form>
 +""" % num
 +</code>
 +
 +Juego de adivinar número via Web (Versión Perl)
 +<code perl>
 +#!/usr/bin/perl -Tw
 +# Adivinar un numero en PERL
 +
 +$| = 1;
 +
 +use CGI qw(:standard);
 +
 +print header;
 +
 +print start_html('Adivinar un numero (PERL)');
 +
 +my $form = new CGI;
 +
 +if (!$form->param('numero')) {
 +  $numero = int(rand(100));
 +  $intentos = -1;
 +  print "Nuevo numero generado<br>";
 +} else {
 +  $numero = int($form->param('numero'));
 +  $prueba = int($form->param('prueba'));
 +  $intentos = int($form->param('intentos'));
 +  if ($prueba == $numero) {
 +    print "<b>Adivinado</b> en ".$intentos." intentos<br>";
 +  } else {
 +    if ($prueba > $numero) {
 +      print "Mas peque<F1>o<br>";
 +    } else {
 +      print "Mas grande<br>";
 +    }
 +  }
 +}
 +
 +print <<'EOF';
 +<hr>
 +  <form method=post>
 +   Numero de prueba: <input name=prueba width=3><br>
 +EOF
 +$intentos+=1;
 +print " <input type=hidden name=numero value=$numero>\n";
 +print " <input type=hidden name=intentos value=$intentos>\n";
 +print " <input type=submit><br></form></body></html>";
 +print end_html;
 +</code>
 +
 +Ejemplo de uso de CGI con Scheme
 +<code scheme>
 +#!/bin/sh
 +string=? ; exec /usr/bin/mzscheme -r $0 "$@"
 +
 +(require (lib "cgi.ss" "net"))
 +(display "Content-Type: text/html\n\n")
 +(display "Hola desde DrScheme")
 +
 +(let ((bindings (get-bindings)))
 +  (let ((name (extract-binding/single 'name bindings)))
 +    (begin
 +      (display "<br>Hola ")
 +      (display name)
 +      )
 +    )
 +  )
 +</code>
 
materias/laboratorio_de_lenguajes_ii/lableng2/ejemplos1.txt · Última modificación: 2011/01/24 15:30 (editor externo)
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki