Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 
Índice general » Mundo Perl » Web » No veo datos de fichero en el explorador Responder al tema
Nuevo tema


Página 1 de 1  [ 5 mensajes ] 
 
Nota 2007-06-27 04:12 @216

Perlero Nuevo
Registrado: 2007-06-27 04:05 @212
Mensajes: 3
No veo datos de fichero en el explorador
Este es el codigo:

Syntax: [ Download ] [ Hide ]
Using perl Syntax Highlighting
#!/usr/bin/perl

use strict;
require "cgi-lib.pl";

my $RASpath = "/";
my $RASlist = "$RASpath/RAS.list";    

# ---- Leemos el fichero de RASes  ----------------------------------------
open (RASES,"$RASlist");  # Abro el archivo
my @RASes = <RASES>;  # Leo...
close (RASES);                 # Cierro el archivo

print "Content-type: text/html\n\n";
print <<HTML;
<HTML>
<HEAD>
<TITLE>Datos</title>
<BODY>
HTML


foreach my $ras (@RASes){
        chomp($ras);
        print "<h4>$ras</h4><br>\n";
}

print "</BODY>\n";
print "</HTML>\n";
 


Como veis, basicamente leo los datos de un fichero y los presento por pantalla.

Pues bien, al ejecutarlo en el terminal todo va bien, veo los datos.. incluso si copio la salida del script a un fichero .html y luego lo abro con el explorador, perfecto.

Si lo ejecuto directamente con el explorador es como si no leyera el fichero y no presenta nada.... ?!?!?

He comprobado permisos y demas, he probado con superusuario y con mi usuario normal... nada. Empiezo a desesperar, alguna idea?


Nota 2007-06-27 04:31 @230

Perlero Nuevo
Registrado: 2007-06-27 04:05 @212
Mensajes: 3
Simplificando un poco el codigo (aunque el problema persiste)

Syntax: [ Download ] [ Hide ]
Using perl Syntax Highlighting
#!/usr/bin/perl

use strict;
require "cgi-lib.pl";

# ---- Leemos el fichero
open (RASES,"/var/log/Datos/RAS.list");  # Abro el archivo
my @RASes = <RASES>;  
close (RASES);          

print "Content-type: text/html\n\n";
print "<HTML><HEAD><TITLE>Indice llamadas CVX DIA</TITLE></HEAD><BODY>";

foreach my $ras (@RASes)
{
        chomp($ras);
        print "<h4>$ras</h4><br>\n";
}
print "</BODY></HTML>";
 


Nota 2007-06-27 07:36 @358
Avatar de Usuario
Administrador
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España
Mensajes: 10268
Pon un die en el open() para saber si lo abre o no.


Nota 2007-06-27 08:42 @404

Perlero Nuevo
Registrado: 2007-06-27 04:05 @212
Mensajes: 3
Tenias razon
El usuario con el que entraba a la maquina desde el navegador era diferente al mio, el problema era de permisos... muchas gracias


Nota 2007-06-27 15:31 @688
Avatar de Usuario
Creador de Perl en Español
Registrado: 2003-10-15 16:52 @744
Ubicación: México
Mensajes: 1163
Hola:

Por eso siempre es buena práctica checar errores al abrir archivos, de esa manera te aseguras de que realmente está abriendose el archivo, por ejemplo:

Syntax: [ Download ] [ Hide ]
Using perl Syntax Highlighting
open my $FILE, '<', '/ruta/al/archivo.txt' or die("No se pudo abrir el archivo: $!");



Saludos

_________________
Uriel Lizama Perl programmer fundador de Perl en Español


Responder al tema  [ 5 mensajes ] 

Reglas del Foro
No puedes abrir nuevos temas en este Foro
No puedes responder a temas en este Foro
No puedes editar tus mensajes en este Foro
No puedes borrar tus mensajes en este Foro
No puedes enviar adjuntos en este Foro

Publicidad

Socializa

Síguenos por Twitter

Suscríbete GRATUITAMENTE al Boletín de Perl en Español

Saltar a:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Traducción al español por Huan Manwë para phpbb-es.com
phpBB SEO