BioHazard,
With neither code nor logs, it is difficult to help you. I would suggest running your source file from the command line to see quickly what is going on. Running it from the command line will give you a better out put than Code 500.
If you don't find anything that way then use the debugger. Failing that, request the Apache logs from your provider.
You may also want to post your code here so that we can have a look at it. Someone here (probably Abigail-II) will know what is going on right away
Kristofer
| [reply] |
Oh, sorry about that: Here's a piece of my code:
#!/usr/bin/perl
use strict;
use lib "/www/htdocs/v028502/cgi-bin/Modules/";
use CGI; # does not need use lib
use HTML::Template; # does need use lib and works fine
use XML::Simple; # does need use lib but doesn't work correctly (XMLou
+t() works)
use LWP::Simple; # does need use lib and works fine, too.
my $q = new CGI;
my $name = $q->param('name');
$name = lc($name);
my $xml = XMLin("$name.xml", searchpath => ['users']); # NOT possible
+on the Linux machine!
print $q->header('text/html'); # HTML Header
print "$xml->{email}<br>$xml->{adress}"; # For Example...
exit;
I can not run my source file from the command line, because it is the machine of my ISP. On my local webserver it works absolutely fine, also in the command line. I even asked for the error logs, but they didn't send it to me yet.
I hope I made my problem a bit more clear. | [reply] [d/l] |
my $xml = XMLin("$name.xml", searchpath => ['users']);
use Data::Dumper;
print "<pre>" . Dumper($xml) . "</pre>";
Then look for an element named 'adress'. I would assume you mean 'address' from the following line.
<i>print $xml->{email}<br>$xml->{adress}</i>
--Kristofer
Updated: added code tags
| [reply] [d/l] [select] |
print $q->header();
my $xml;
eval {
$xml = XMLin("$name.xml", searchpath => ['users']);
};
if($@) {
print "the error was: <pre>$@</pre>";
} else {
print "no error was generated.";
}
anders pearson
| [reply] [d/l] |
A shot in the dark, but what I would try:
What if you start your program like this?
BEGIN
{
push (@INC, "/www/htdocs/v028502/cgi-bin/Modules/");
}
Maybe XML::Simple is itself looking for something in the directory you defined in the 'use lib' line? Try throwing that directory in the @INC too, can't hurt.
| [reply] [d/l] |