Ошибка Perl: при записи ответа CGI произошла ошибка

1

Когда я добавляю use CGI::Session; к моему файлу cgi, я получаю эту ошибку:

Произошла ошибка при написании ответа CGI

Если я прокомментирую эту строку, она будет работать отлично.

Я использую cPanel для размещения моего сайта. В чем причина этой ошибки? Не хватает ли модуля CGI::Session на сервере хостинг-провайдера?

Как исправить эту проблему?

Код:

#!/usr/local/bin/perl 
use HTML::Template; 
use DBI;
use CGI;
use CGI::Carp qw/fatalsToBrowser warningsToBrowser/;
#use CGI::Session ;

#send the obligatory Content-Type
print "Content-Type: text/html\n\n"; 

$user = '*******';
$password = '********';

#$session = CGI::Session->load();
#$q = new CGI;

$db_handle = DBI->connect ('DBI:mysql:database=amdvsfre_justclick',$user,$password) 
or die "Couldn't connect to database: $DBI::errstr\n";

#set the value of SQL query

$sql_query = "SELECT t1.request_id, t1.request_message, t2.user_name, t2.user_city , COUNT(t3.request_id), t1.request_date, t1.request_time
FROM requests t1 INNER JOIN users t2 ON t1.user_id = t2.user_id
LEFT JOIN responses t3 ON t1.request_id = t3.request_id
GROUP BY t1.request_id desc" ;

 ...
 ...
 passing the query result in template file, so that it can be displayed on the browser

Если я раскомментирую #use CGI :: Session; то его выдающая ошибка. Мне нужно импортировать этот файл, потому что я хочу использовать переменную сеанса. как решить проблему?

  • 0
    Нам понадобится гораздо больше информации, чтобы помочь вам. Можете ли вы привести (урезанный) пример кода, который демонстрирует вашу проблему? Что записывается в журнал ошибок веб-сервера?
  • 0
    Пожалуйста, проверьте мои правки в запросе.
Показать ещё 5 комментариев
Теги:
cgi

1 ответ

0

Поскольку вы, по-видимому, не получаете fatalsToBrowser по запросу, вам нужно запустить программу из командной строки и посмотреть, где она находится.

Сделай так:

$ /usr/local/bin/perl yourscriptname

Посмотрите, какие сообщения об ошибках вы получите.

Я бы использовал отладчик, чтобы иметь контроль над программой, если ошибка не в CGI :: Session.

$ /usr/local/bin/perl -d yourscriptname

Как только мы увидим истинное сообщение об ошибке, мы можем помочь вам исправить проблему.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню