Introducción
Hola gente, en el tutorial anterior CGI primeros pasos habíamos hablado un poco de las distintas tecnologías, una breve introducción al mundo de perl y hasta habíamos llegado al punto de crear nuestro primer script CGI de PERL.
Pero bien, ahora veremos algunos típicos problemas con los que se pueden chocar al empezar a dar los primeros pasos en PERL, a la vez de dar algunos consejos útiles para que les sea más fácil y accesible entrar en este nuevo mundo de la programación.
Espero que les guste y les sea de utilidad, etoy seguro que para más de uno así será!!!
ME BAJE UN SCRIPT DE LA WEB Y NO ENTIENDO NADA, NI UNA LETRA, PARECE ESTAR EN CHINO Y NO EN PERL
Bajarse scripts de la web es una de las prácticas más usuales entre los principiantes, el tema es que dichos scripts están escritos por programadores avanzados y a la vez suelen presentar varias opciones al usuario, con lo cual las líneas de códigos se multiplican y se hacen mas difíciles de entender. Razón por la cual se recomienda no usarlos, ya que son lentos y retorcidos para entender. Yo prefiero 100% sentarme un rato y programar mis propios scripts, ya que es la mejor forma de aprender a programar y a la vez consigo scripts customizados a gusto y optimizados al 100% ya que no tienen ni media línea de más.
CREO QUE HAGO TODO CORRECTAMENTE PERO EL SCRIPT NO ME FUNCIONA!!!
Lo más frustrante para todo principiante es cuando subimos nuestro script a la web y cuando lo probamos en el browser nos aparece ese mensaje típico de error de servidor que nos dan ganas de tirar el monitor por la ventana!!!
Pero lo mejor es no desesperarse e intentar sacar la mayor información de los mensajes de error. Si bien el mensaje de error que da el navegador poca información nos puede dar, los servidores suelen tener en el directorio raíz (la carpeta madre) un archivo de texto que se llama ERROR LOG y ahí se van almacenando todos los problemas que se sucedieron en el servidor. Con lo cual podemos encontrarnos con mensajes más específicos como:
Error de syntaxis en la linea 48
Este error es el más fácil de solucionar en la mayoría de las veces, ya que vamos a la linea y listo. Pero puede suceder que la linea que nos está indicando esté perfecta!!!
Esto sucede porque la linea de error puede estár en una linea anterior en la cual por ejemplo no colocamos el ";" final de la linea de print...Entonces el interprete espera encontrarla en la linea siguiente...Y PUEDE QUE LLEGUE ASÍ HASTA EL FINAL DEL SCRIPT!!!
Así que ya saben, si el error no se encuentra en la la linea del error que muestra el ERROR LOG, es porque hemos comenzado un proceso que no hemos terminado como por ejemplo:
print "<html>
<body>
</html>
exit(1);
CANT LOCATE SCRIPT HEADER
Cuando leemos este mensaje en el error log es porque al navegador web no le estamos mandando ningun encabezado, cabe aclarar que este encabezado no es el de HTML (
) sino que es la primera linea que debemos colocar en el print del script:
Para mandar info de HTML al navegador web debemos colocar
print "content-type: text/html\n\n";
Esta linea lo que hace es decirle al navegador web que el texto que le estamos enviando es de HTML y no de otro tipo...como XML, CSS, PNG...
Cabe destacar que este encabezado va en el primer print que realizamos, y no en todos los siguientes...Como por ejemplo
print "content-type: text/html \n\n";
print "Hola gente<br>";
print "<b>Como van</b>";
CREO QUE HAGO TODO CORRECTAMENTE PERO EL SCRIPT SIGUE SIN FUNCIONAR!!!
Cuando un script no tiene errores de syntaxis, verificamos todo y sigue sin funcionar...Lo más probable es que estemos cometiendo un error más que tonto!!! así que no nos tenemos que desesperar y pensar en lo más básico...como por ejemplo haber subido el script de perl en modo ASCII como hacemos con los .html ya que son archivos de texto.
En cambio el método binario se usa para imágenes (.jpg,.gif...) y si subimos el archivo de perl en este método nunca se podrá ejecutar.
Otro error básico es fijarse que hayamos puesto bien los enlaces, los links entre el el formulario y el archivo de perl por ejemplo. Sobretodo su usamos links de forma relativa como por ejemplo:
/cgi-bin/mi_script.pl
Notas Finales
Con este tutorial creo que ya hemos abarcado casi todas las cuestiones importantes para empezar a utilizar este potente lenguaje, cualquier duda o cuestión, no duden en comunicarce con nosotros. abajo les dejo mi mail: [email protected].
Gracias por visitar este tutorial y espero que les sirva.
Recuerden también que si quieren más detalles acerca de Como Manejar Errores pueden leer mi tutorial en:
http://perlenespanol.com/archives-tut/000059.html