Главная страница


ru.cgi.perl

 
 - RU.CGI.PERL ------------------------------------------------------------------
 From : Alexander Bolotnov                   2:5052/4.82    15 May 2001  13:28:12
 To : All
 Subject : Q: flock messing the script headers thing.
 -------------------------------------------------------------------------------- 
 
 
 такая штука. хочется, чтобы скрипт сделал что надо, а потом передать ему:
 "Content-type: text/html\n;Location: ../somewhere/something?foo\n\n", чтобы он
 послал меня как бы обратно туда, откуда я пришел, а уже там обработчик говорит, 
 что у меня получилось или нет.
 
 все бы хорошо, но вот только если пользовать flock(), перед которым нет
 header'a, то почему-то отдается 500 и premature script headers, что есть очень
 нежелательный момент, потому что с отданным уже хедером я, выходит, не перешлюсь
 на нужную мне страничку...
 
 как быть?
 
 вот примерный код:
 #!c:/perl/bin/perl.exe -T
 
 use CGI qw/:standard/;
 $q = new CGI;
 
 $name = $q->param('name');
 $email = $q->param('email');
 $note = $q->param('note');
 
 open DF, "< $data" or die $!;
 while(<DF>){$last = $_ if eof(DF);}
 close DF;
 
 ($snum) = $last =~/^(\d+)||(.+)$/;
 $snum++;
 
 $name = "Unknown" if (!$name);
 $email = "" if ($email!~/.+?@.+\..+/);
 
 if (!$note){
 print header, start_html, "here has to be a message", end_html;
 die;
 }
 
 for ($name,$email,$note)
 {
 s/&/&/g;
 s/</</g;
 
 s/>/>/g;
 
 s/(\r|\t)/ /g;
 s/\s\s/  /g;
 s/\n/<br>/g;
 }
 
 #print data to file
 
 open DF, ">> $data" or die $!;
 
 #> ВОТ ЗДЕСЬ HАЧИHАЮТСЯ ПРОБЛЕМЫ. Если убрать флок, то все нормально.
 
 flock (DF,LOCK_EX);
 
 print DF "$snum||$name||$email||$note\n";
 
 #flock(DF, LOCK_UN);
 close DF;
 print "Content-type: text/html\n";
 print "Location: ../yosh/contacts_1.shtml?done\n\n";
 
 Alexander Bolotnov.
 Pedigree mole.
 
 ---
  * Origin: Я не слон... а вот ты - слон... (2:5052/4.82)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Q: flock messing the script headers thing.   Alexander Bolotnov   15 May 2001 13:28:12 
 Re: Q: flock messing the script headers thing.   Pavel V. Ammosov   15 May 2001 15:30:49 
 Re: Q: flock messing the script headers thing.   Andy Bogdanov   15 May 2001 14:47:33 
 Re: flock messing the script headers thing.   PROext   15 May 2001 15:11:55 
 Q: flock messing the script headers thing.   Dmitry Smolin   15 May 2001 15:09:58 
 Re: flock messing the script headers thing.   Alexander V. Gaiduk   15 May 2001 16:17:18 
 flock messing the script headers thing.   Yan Alexandrovsky   16 May 2001 11:00:36 
Архивное /ru.cgi.perl/27883b013024.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional