Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Perl. Complete set of HTTP headers.

Сообщения:  [1-10]   [11-12] 

 
 автор: bronenos   (14.11.2009 в 15:51)   письмо автору
 
   для: ....   (14.11.2009 в 11:05)
 

Я вижу только одну причину тому, что так получается. Файл не подключается через require.
Ибо если разместить строку ПОСЛЕ require, то не работает (напарывается, видимо, на ошибку, и дальше не идет), если в нем же - то та же причина - нет подключения, нет исполнения. Если ДО - то выводится заголовок. Остается понять, почему не подключается и как это провернуть..

  Ответить  
 
 автор: ....   (14.11.2009 в 11:05)
 
   для: bronenos   (14.11.2009 в 10:50)
 

одно другому не мешает :)
неплохо было.бы просто всётаки видеть в браузере где обрывается выполнение.
a эти use Mod , они как пишут , эквивалентны
BEGIN { require Mod; import Mod;}
следовательно выполняются раньше любых print

  Ответить  
 
 автор: bronenos   (14.11.2009 в 10:50)   письмо автору
 
   для: ....   (14.11.2009 в 10:21)
 

Да проблема, по ходу, не в том, чтоб это написать, а в том, чтоб заставить работать подключаемые файлы.. попробую пошаманить..

  Ответить  
 
 автор: ....   (14.11.2009 в 10:21)
 
   для: bronenos   (13.11.2009 в 16:48)
 

не смог смоделировать ситуацию.
ещё только такая мысль , попробовать это print "Content-Type: text/html\r\n\r\n-";
написать как содержимое блока BEGIN{}

  Ответить  
 
 автор: bronenos   (13.11.2009 в 16:48)   письмо автору
 
   для: GeorgeIV   (13.11.2009 в 16:26)
 

Момент вывода заголовков у меня находится в END, переопределенного через tie
Класс этот подключается как файл

Если же брать испытуемое сейчас, то:
main.pl
#!/usr/bin/perl -w
require "./need.pl";

$PAGE{page} = "main.tpl";
$tpl->process("index.tpl", \%PAGE) or die "Ошибка шаблона: ".$tpl->error();


need.pl
print "Content-Type: text/html\r\n\r\n-";
use CGI::Carp "fatalsToBrowser";
use Digest::MD5 "md5_hex";
use lib "lib";
use Encode;
use Need;
use SQLite;
use Internet;
use Text;
use Template;

$DB = new SQLite("gymdb.sqlite");

$tpl = new Template({
    INCLUDE_PATH => (defined $ADMIN ? "admin/templates/" : "templates/"),
    START_TAG => quotemeta("{:"),
    END_TAG => quotemeta(":}")
});

1;


Это тот, что не работает сейчас в том числе.

  Ответить  
 
 автор: GeorgeIV   (13.11.2009 в 16:26)   письмо автору
 
   для: bronenos   (13.11.2009 в 16:16)
 

приведите полные начала обоих файлов, включая все use и момент вывода зголовков и нужной информации.

  Ответить  
 
 автор: bronenos   (13.11.2009 в 16:16)   письмо автору
 
   для: heed   (13.11.2009 в 14:46)
 

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

  Ответить  
 
 автор: heed   (13.11.2009 в 14:46)   письмо автору
 
   для: bronenos   (13.11.2009 в 14:02)
 

странно, может-быть жалуется на заголовок не потому что не выводится заголовок
, а потому что выдаёт ошибку связанную с чем-то
#!/usr/bin/perl -w
print "content-type: text/plain\n\n";
for $tmp ( @INC) {print $tmp . "\n";}
из-за #!/usr/bin/perl так-же может выдавать ошибку если путь не соответствует
, а среди каталогов @INC , в которых ищется имя файла включаемого require, всегда должно быть '.'
, но даже если там нет '.' , думаю это должна быть ошибка после печати заголовка.
Хоть какой-нибудь perl-скрипт работает в этой-же дирректории?
//upd
возможно разрешения chmod тоже могут быть причиной

  Ответить  
 
 автор: Trianon   (13.11.2009 в 14:26)   письмо автору
 
   для: bronenos   (13.11.2009 в 14:02)
 

Я бы, процитировав диагностику, поинтересовался у техподдержки хостера, какие поля должны непременно входить в требуемое
"complete set of HTTP headers"

  Ответить  
 
 автор: bronenos   (13.11.2009 в 14:02)   письмо автору
 
   для: heed   (13.11.2009 в 13:46)
 

я больше C-шник, так что такие комментарии поставил на автомате сюда.
На деле заместо этой строчки у меня фигурировала
print "Content-Type: text/html\r\n\r\n-";, дефис чтоб было видно, что и текст выводится.

Предложенный Вами вариант не сработал, по-прежнему выводя ту же ошибку..

  Ответить  

Сообщения:  [1-10]   [11-12] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования