Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - NCRangeR

Страницы: [1] 2 3
2
Perl / Ошибки. Help!!!
« : 12 Июня 2003, 23:06:43 »
C++
Было такое (насчет зависания большого скрипта), причин не знаю. :(
Причем вис, зараза, даже когда в самом начале ставил die "!!";

Насчет - посмотри, не забыл ли где кавычки закрыть, он эту штуку может расценивать как обращение к оператору < > (вроде такое один раз у меня было)...

Про Warning - пиши в начале скрипта прототип вызываемой функции.
sub roc();

3
Perl / я в шоке. CONTENT_LENGTH
« : 12 Июня 2003, 18:00:16 »
teebot
Всегда так? У меня GET выдается только при первом запуске, если скрипту передаются данные, то POST.
А CONTENT_LENGTH согласно распечатке чему равен?

P.S.
попробуй вариант с CGI:
#!/usr/local/bin/perl -w
use CGI;
print "Content-Type: text/html\\n\\n";
print "
";
$cgi = new CGI;
$x = $cgi -> param(\'q\');
print $x;
print map ("$_: $ENV{$_}
", sort keys %ENV);

хотя, боюсь, будет то же самое.. :(

4
Perl / я в шоке. CONTENT_LENGTH
« : 12 Июня 2003, 17:05:54 »
teebot
теекс.. раз ноль (в смысле - не показывает значение $ENV{..}) - значит вызов sysread читает 0 байт не потому, что ничего нет, а потому что так "велено"..
Попробуй так:

$PostContent = "";
while (sysread STDIN, $str, 1)
{
$PostContent .= $str;
};

Почти то же, что я уже предлагал, только с маленьким исправлением..

P.S. Что будет, если написать вот таукую вещь:
print map ("$_: $ENV{$_}
", keys %ENV);
?
(у меня просто выводит всё окружение)

5
Perl / я в шоке. CONTENT_LENGTH
« : 12 Июня 2003, 16:10:08 »
teebot
а что возвращает вызов
$a = sysread STDIN, $x, $ENV{\'CONTENT_LENGTH\'}; ?

0 или undef?

if (defined $a) { print $a; } else { print "undef"; };

Кстати, чему равен сам $ENV{\'CONTENT_LENGTH\'}?, вроде бы не обнаружил этого, почитав логи темы..
что будет, если написать
print $ENV{\'CONTENT_LENGTH\'}?

P.S. И всё-таки попробуй модуль CGI..

6
Perl / подсчет символов
« : 12 Июня 2003, 15:03:34 »
Yaroslav
тогда можно еще через javascript (причем здесь perl?!)






7
Perl / как счиатть Хеш-массив
« : 12 Июня 2003, 14:22:23 »
qik
Предлагаю такой вариант:

print NAME (join " ", %voc);

тогда считать можно как

%voc = split / /, ;

в случае, если в %voc хранятся данные, не содержащие пробелов.

В противном случае можно придумать другой разделитель, например, \\x07 ;)

8
Perl / подсчет символов
« : 12 Июня 2003, 13:58:51 »
Yaroslav
в смысле - сообщения? переменной?
тогда - так:
$x = ( ( length $x > 20 ) ? substr ($x, 0, 20) : $x );

или поля в форме? тогда надо делать через HTML:
maxlength=20>

9
Perl / я в шоке. CONTENT_LENGTH
« : 12 Июня 2003, 13:53:07 »
Попробуй просто сервак поиспытывать.
Например, вот такой скрипт будет работать или нет:

#!/usr/local/bin/perl -w
#Имя - x.pl
print "Content-Type: text/html\\n\\n";
print "
";
sysread STDIN, $x, $ENV{\'CONTENT_LENGTH\'};
print $x;

10
Perl / я в шоке. CONTENT_LENGTH
« : 12 Июня 2003, 13:13:08 »
teebot
У меня такое уже было :(

Попробуй получать данные из POST в самом-самом-самом начале работы скрипта.

Некоторые встроенные функции типа "cookie" делают sysread до тебя, таким образом информация теряется.

Еще попробуй вместо просто sysread сделать вот так:

$PostContent = "";
while (sysread STDIN, $str, $ENV {"CONTENT_LENGTH"})
{
$PostContent .= $str;
};

11
Perl / Проблема со скриптом sendmail
« : 10 Июня 2003, 06:45:16 »
alexander70
в смысле - исходный текст того, который не работает ;)

12
Perl / Конец работы скрипта на Perl
« : 03 Июня 2003, 05:26:38 »
cooler.com.ua

Можно в выводимом окне сделать невидимый фрейм, который будет обращаться к скрипту isAlive.pl, который в свою очередь будет записывать время последнего обращения в файл.
Обращение будет происходить по пришествии каждой новой порции информации, можно, например, это сделать, заменив
syswrite (STDOUT, "test");
на
syswrite (STDOUT, "test");

test.pl в каждом цикле будет считывать время последнего обращения, и если, предположим, уже 20 секунд не было обращений, делать exit (0);

Надеюсь, что несмотря на возможные ошибки, в принципе идея ясна ;)

13
^site([1-3])/(.*) /free/$2/index$1.htm

14
Perl / Многомерные массивы
« : 20 Мая 2003, 04:49:47 »
Для организации многомерных массивов нагляднее использовать ссылки. То есть сделать массив ссылок на массивы.

15
Perl / ошибка 500
« : 15 Мая 2003, 07:23:49 »
http://www.google.com.ru/search?q=Premature+end+of+script+headers+perl&ie=windows-1251&hl=ru&btnG=%CF%EE%E8%F1%EA+%E2+Google

и вот что нашел по первой же ссылке:
(http://www.webmasterworld.com/forum13/2109.htm)

- I researched what "premature..." meant and realized my scripts were probably being saved with Windows CR/LF line endings. I changed an option to "UNIX" and tried again.

Дома, наверное, стоит Windows а на серваке Linux/FreeBSD - и вот, пожалуйста. Скачай какой-нибудь редактор (хотя бы с
http://www.editplus.com) и сохрани свой скрипт в UNIX-формате.

Если это не работает, там люди предлагают еще какие-то решения этой проблемы.

Страницы: [1] 2 3