• Publicidad

Tengo problemas con CGI

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

Tengo problemas con CGI

Notapor Antonio » 2011-09-29 07:40 @361

¡Qué tal, comó están todos!

Antes que nada quiero decirles que soy nuevo en este lenguaje (Perl) y la verdad tengo mucho interés en aprender más.

Tengo una página hospedada en un servidor, un dominio y el servidor soporta PHP y Perl para los cgi, sé cuales son las rutas y tengo los permisos 755 en la carpeta y en el archivo .cgi, pero a la hora de hacer una prueba da error.

El servicio técnico del hosting me dice que son antiguos.
Este mismo cgi ha funcionado en otro hosting que ha cerrado, ahora en septiembre.

Por favor, ayuda.

admin.cgi
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!/usr/bin/perl
  2. #
  3. # admin.cgi  (Antonio Tain, 26-09-2011)
  4. #
  5. # CGI para la administración de productos de ADOS
  6. #
  7.  
  8. use Mysql;
  9. use LWP::Simple;
  10.  
  11. require "admin.cfg";
  12.  
  13. $|=1;
  14.  
  15. print "Content-type: text/html\n\n";
  16.  
  17.  
  18.  
  19.  
  20. #-- Fichero de contraseña de administración.
  21. $FICH_PWD=$dir_cgi.$separador_directorios."admin.pwd";
  22.  
  23. #-- Leemos la entrada guardando los campos en el hash %in y los nombres de los ficheros,
  24. #-- si los hay, en %file_name. %file_content dice el tipo de los ficheros, y %cgi_sfn no se usa.
  25. #-- ATENCION, esta funcion, añade al final de cada variable de $in, el fin de cadena \0, con lo
  26. #--           que la expresion regular para ver si una variable esta vacia o con espacios, con
  27. #--           esta nueva funcion, no funciona if ($variablei=~/^[ \t]*$/)
  28. #--           sino que tenemos que usar       if ($variable=~/^[ \t]*[\0]*$/)
  29.  
  30. &ReadParse(\%in,\%file_name,\%file_content,\%cgi_sfn);
  31. localhost   estudioa_datos  
  32.  
  33.  
  34.  
  35. #------------------ conexion a la BD ------------------------------------
  36. $user='estudioa_estudio';
  37. $passwd='f@M2Fx63$)';
  38. $dbh=Mysql->connect('localhost','estudioa_estudio',$user,   $passwd);
  39.  
  40.  
  41.  $tabla_productos="productos";
  42.  $tabla_categorias="categorias";
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Antonio
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2011-09-29 07:31 @355

Publicidad

Re: Tengo problemas con CGI

Notapor explorer » 2011-09-29 07:57 @373

Bienvenido a los foros de Perl en español, Antonio.

Yo veo que el módulo Mysql puede ser la razón: ya nadie lo usa. En su lugar, se usa DBI.

En esto foro, en la sección de Tutoriales tienes algunos ejemplos. Y en los foros, muchos más. Busca por 'DBI'.

La línea 31 parece que es un error... ¿Has ejecutado el programa en tu ordenador, con perl -c para ver si hay errores de sintaxis?

Prueba a poner mi CGI mínimo, para comprobar que sí está activo el servicio CGI, en tu alojamiento.

Observa que uso CGI::Carp, para que, en caso de error, salga por la ventana del navegador.
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

Re: Tengo problemas con CGI

Notapor Antonio » 2011-09-29 10:25 @475

Lo primero, gracias por la respuesta.

No entiendo lo de DBI, la base de datos está en SQL y la vuelco en el servidor mediante MySQL.

Podrías enviarme algo, ¿cómo hacer la llamada? o un ejemplo.

Esta misma llamada funcionaba en otro servidor "PRIMEGALACTIC" que, por lo que pareca, ha cerrado y estoy colgadísimo.

Saludos
Antonio
Perlero nuevo
Perlero nuevo
 
Mensajes: 2
Registrado: 2011-09-29 07:31 @355

Re: Tengo problemas con CGI

Notapor explorer » 2011-09-29 10:39 @485

Sí, ya sabemos que la base de datos es la MySQL. Aquí estamos hablando del módulo que necesitas para dialogar con ella.

El módulo Mysql que estás usando es muy antiguo (del 2006). Lo más seguro es que tengas instalado, en tu alojamiento actual, el módulo DBI (y el DBD::mysql) en lugar del Mysql.

Tienes que leer antes la guía que te he indicado.

Aquí tienes un hilo parecido, con un ejemplo.
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