![]() |
Показаны 8 сообщений на этой странице |
Форум сетевых администраторов (http://netadmin.ws/forum/index.php)
- Другие (http://netadmin.ws/forum/forumdisplay.php?forumid=19)
-- Как на PERLе сделать .... (http://netadmin.ws/forum/showthread.php?threadid=638)
Как на PERLе сделать ....
У меня IconBoard 2.1.9.
Я сделал так, что-бы тот кто набрал 5 постов смог зайти в "закрытый" форум, даже не в форум, а при клике на ссылку этого форума открывалась HTML. Код там такой(кусок кода):
$howmuch = "5"; #кол-во сообщений для допуска в форум
$link = "http://линк_на_HTML" # ссылка куда перейти
if (("$privateforum" eq "yes") && ("$allowed" ne "yes")) { &accessneeded; }
if (("$inforum" eq "$forumnumber") && ("$numberofposts" < "$howmuch")) { &noaccess; }
else {
# тут я попробовал print "Location: $link\n\n";
if (($inmembername) && ($privateforum ne "yes")) { &whosonline("$inmembername|$ibtxt{'0617'} <a href=\"$forumsprog?forum=$inforum\"><b>$forumname</b></a>|$ibtxt{'1602'}");
...
...
...
...
sub noaccess {
тут сообщение, что нельзя
}
Ошибка какая? 500?
Там, часом не фрейм сделан?
Ошибка в коде, сервак не ругается.
Тоесть мне нужно было что-бы открывалась HTML, а открывается шапка. Перл я практически не знаю, так, несколько команд....
Вот почему шапка конфы вылазит?
Т.е. ты хочешь чтоб этот location передавался браузеру непосредственно по HTTP 1.X и тот автоматом переходил туда???
Dawnshade, да.
Ð_то я хотел сделать типа презента тем, кто постит в форум - выложить там некоторую инфо(статьи).
И вот ещё попутно - а как в перле открывать "в новом окне"?
Для этого тебе нужен nph скрипт. Честно, я не спец по этому... Поищи где-нить инфо.
Дело в том, что ты выводишь этот location на экран, т.к. сервак уже за тебя отвечает HTTP 200 OK, а тебе надо либо 302 либо 301 (moved temporary or permanent).
Как следствие тебе прийдеться все ответы сервера писать.
По-моему это проще сделать через refresh тэг (кажеться он head вставляется).
Спасибо за желание помочь, будем дерзать дальше ....
Похоже ошибся я... Ð_ылся тут в документации, нашел:
quote:
You can use redirection to point the client browser to another file or script, usually in a way that's invisible to the user. The CGI module provides the redirect() function for this purpose. The following code redirects the client browser to http://www.perl.com and works with both CGI or PerlIS:
use CGI qw(:standard);
print redirect('http://www.perl.com');
| Формат времени GMT. Текущее время 05:54. | Показаны 8 сообщений на этой странице |
Powered by: vBulletin Version 2.2.4
Copyright © Jelsoft Enterprises Limited 2000, 2001.