• Publicidad

Cómo facilitar el uso de scripts

Todo lo relacionado con el desarrollo Web con Perl: desde CGI hasta Mojolicious

Cómo facilitar el uso de scripts

Notapor ThYr0N » 2009-04-14 07:59 @374

A ver, os pongo en situación un momento. Trabajo en un laboratorio de proteómica y yo estudié Biotecnología. Sé programar en Perl, básicamente pequeños scripts que ayudan a mi y a otros investigadores a cambiar de formatos archivos, a calcular estadísticas de archivos muy grandes de DNA (llenos de letras) etc... etc... son scripts sencillos del estilo:

Tenemos una carpeta llena de archivos y hace falta hacer un "index" con todos esos archivos ordenados separando varios números del nombre del archivo entrando en esos archivos y haciendo algunos cálculos, para acabar generando un archivo final para que otro programa lo lea y haga unos cálculos mucho más complicados.

No tengo problema haciendo los programas pero aquí viene mi dificultad. Mis compañeros de laboratorio al igual que muchos investigadores no tienen ni idea de cómo correr un script de Perl NI POR LA LÍNEA DE COMANDO, así que quería simplificarlos vía HTML o CGI (tampoco entiendo mucho la diferencia). Básicamente lo que querría hacer es, que en la carpeta de dicho script haya una página HTML que al abrirla le diga a la persona (introdúceme aquí el archivo que quieres, y dime dónde lo quieres guardar y dame el parámetro X y el parámetro Y. He estado leyendo varias cosas y no me aclaro por dónde empezar.

Sé cómo hacer que el perl genere archivos HTML o "responda" en HTML pero no sé cómo montármelo. Sé un poco de HTML y no tengo problema meneando Dreamweaver, etc... pero no acabo de aclararme si tengo que aprender CGI, si hay cosas más fáciles, sino voy bien en este sub-foro, etc... ^^

Muchísimas gracias.
ThYr0N
Perlero nuevo
Perlero nuevo
 
Mensajes: 8
Registrado: 2009-04-14 07:53 @370

Publicidad

Notapor explorer » 2009-04-14 08:39 @402

Bienvenido a los foros de Perl en Español, ThYr0N.

No es frecuente, pero en ocasiones nos encontramos con compañeros que son auténticas nulidades para cosas tan básicas como pulsar las teclas de un teclado.

Su capacidad cerebral se reduce a pulsar el botón izquierdo del ratón. Algunos incluso hasta desconocen la existencia del botón derecho.

En esas situaciones solo queda facilitarles un poco su insulsa existencia presentándoles lo mismo, pero de otra forma.

No es la primera vez que veo el poner programas de bioinformática en forma de CGI/formularios HTML para facilitar su uso. Parece ser que una pantalla HTML es menos amenazadora que una escueta línea de comandos. Es indudable que el gasto energético de pulsar y escribir en el formulario es mucho menor que el de recordar qué y cómo escribir una línea de comandos.

Puedes hacerlo de varias formas, pero la más simple es la apuntada por ti: si suponemos que tienes instalado un servidor web solo tienes que crear un programa Perl que llame al programa de análisis correspondiente, pasándole los argumentos pasados por el usuario. Al usuario le presentas con unas páginas estáticas, en las que exista un formulario a rellenar. Y ya está.

Bueno, no está. Hay algunos detalles a pulir: sistema operativo, qué servidor web usas, dónde colocar las páginas estáticas, dónde colocar los CGI, cómo presentar los resultados al usuario, etc. etc.

Con calma...

Empieza leyendo por encima la sección de Tutoriales, y comienza a hacer más preguntas, que por aquí estaremos.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor ThYr0N » 2009-04-14 08:43 @405

Gracias por la comprensión. Sí, claramente hay gente que tiene una "alergia" a la línea de comandos o cmd, les comentas que es parecido al MS-DOS y casi les da un ataque.

Aquí radica el primer problema, no tengo un servidor web instalado. He leído cómo hacer que el programa de Perl "presente" mensajes HTML y cómo hacer que el servidor reconozca que le estas escribiendo ese trozo en HTML, pero claro, al no tener el servidor web instalado la cosa no tiraba ^^ ahora me pongo a mirar cómo instalar uno.

Gracias por la rápida respuesta :)

EDIT:

Encontrado esto ---> http://perlenespanol.com/tutoriales/win ... ndows.html creo que es justo lo que necesito :D para empezar a trastear con CGI's
ThYr0N
Perlero nuevo
Perlero nuevo
 
Mensajes: 8
Registrado: 2009-04-14 07:53 @370

Notapor ThYr0N » 2009-04-14 09:11 @424

Ok. Ya tengo un servidor Apache corriendo y puedo ejecutar CGI y ver mensajes en HTML que pongo. Ahora tengo que bajarme un gestor de HTML tipo Dreamweaver para ponerlo un poco bonito.

La duda que tengo ahora es cómo hago los "formularios" o mejor dicho, cómo lo hago para que desde la página introduzcan parámetros que sean usados en el programa Perl.
ThYr0N
Perlero nuevo
Perlero nuevo
 
Mensajes: 8
Registrado: 2009-04-14 07:53 @370

Notapor explorer » 2009-04-14 10:28 @477

Para hacer páginas HTML no te hace falta nada más que un editor de textos, ya sabes ;)

Haces las páginas con los formularios. En cada formulario, pones las cajas de texto para recibir los parámetros de los usuarios. Y el 'action' del <form> que apunte a tu CGI, que ejecutará el programa.

Por estos foros hay muchos ejemplos de CGI.

Hecha un vistazo a mi CGI mínimo para que veas una forma de obtener los parámetros pasados por el usuario.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor ThYr0N » 2009-04-15 05:16 @261

Bueno ya he conseguido hacer un par de programas que entren los datos los usuarios y corra el programa usando GET y POST.

Ahora tengo alguna duda más, éstas ya mas "tontas" y creo que ya son más de HTML.

1.- Me gustaría crear un botón "examinar" que me seleccionará carpetas, NO archivos.

2.- Otro botón estilo "guardar" para que la persona diga "el archivo resultante del programa guardármelo aquí, con este nombre" que básicamente es parecido a poder seleccionar carpetas.

Por otro lado, si quiero mejorar los CGI del estilo, que haya algún menú, o una parte de la página estática y la otra dinámica, que vaya cambiando con los resultados, ¿todo esto es HTML? ¿o ya me tengo que liar con PHP?

Gracias de antemano.
ThYr0N
Perlero nuevo
Perlero nuevo
 
Mensajes: 8
Registrado: 2009-04-14 07:53 @370

Notapor explorer » 2009-04-15 05:32 @272

Puedes hacer partes estáticas y dinámicas con Perl. Si quieres hacerlo en PHP deberás ir a otro foro, desde luego.

De la parte dinámica, con CGI::Ajax puedes realizar cosas muy interesantes, y escribiendo muy poco código. Pero hay muchas otras formas de hacer partes dinámicas sin llegar a tener que usar Ajax.

De las dos preguntas, creo que la respuesta es NO en las dos, pero no estoy seguro con respecto a la última versión de los estándares HTML. Hay que ver antes si te refieres a carpetas y ficheros locales o remotos. De la pregunta 1 creo que es una limitación del HTML. De la segunda, creo que no se puede por un tema de seguridad.

Quizás alguien con más experiencia en HTML que lea este hilo te lo pueda confirmar.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Web

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado