![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| foma07 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 28.11.2007 Репутация: нет Всего: нет |
Подскажите ламеру в чем может быть проблема если cgi программка на топсервере 2.1 работает а на хостинге нет. Пути прописаны правильно. Текст программы такой
#!/usr/bin/perl -wT #antest.cgi use strict; use cgi; $datafile="ank.txt"; sub urldecode{ local($val)=@_; $val=~s/\+/ /g; $val=~s/%([0-9A-H]{2})/pack('C',hex($1))/ge; return $val; } if($ENV{'REQUEST_METHOD'} eq 'GET'){$query=$ENV{'QUERY_STRING'};} elsif($ENV{'REQUEST_METHOD'} eq 'POST') {sysread STDIN,$query,$ENV{'CONTENT_LENGTH'};} if($query ne ''){ @formfields=split(/&/,$query); foreach(@formfields){ if(/^famil=(.*)/){$famil=urldecode($1);} if(/^im=(.*)/){$im=urldecode($1);} if(/^otch=(.*)/){$otch=urldecode($1);} if(/^teln=(.*)/){$teln=urldecode($1);} if(/^pocht=(.*)/){$pocht=urldecode($1);} if(/^ind=(.*)/){$ind=urldecode($1);} if(/^strana=(.*)/){$strana=urldecode($1);} if(/^obl=(.*)/){$obl=urldecode($1);} if(/^gor=(.*)/){$gor=urldecode($1);} if(/^ulz=(.*)/){$ulz=urldecode($1);} if(/^cons=(.*)/){$cons=urldecode($1);} if(/^mytext=(.*)/){$mytext=urldecode($1);} } $anket_str=join '\t',($famil,$im,$otch,$teln,$pocht,$ind,$strana,$obl,$gor,$ulz,$cons,$mytext); open DATA,">>$datafile" || print_err("Cannot open $datafile $!"); print DATA "$anket_str\n"; close DATA; } print "Location: /index.htm\n\n"; Заранее благодарен! |
|||
|
||||
| amg |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 1 Всего: 50 |
1. Попробуй закомментировать
# use strict; 2. use CGI; (CGI заглавными буквами). Это сообщение отредактировал(а) amg - 22.1.2008, 15:36 |
|||
|
||||
| foma07 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 28.11.2007 Репутация: нет Всего: нет |
Не помогло. Всеравно 500 ошибка.
В логе пишет Premature end of script headers: Это сообщение отредактировал(а) foma07 - 22.1.2008, 15:43 |
|||
|
||||
| amg |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 1 Всего: 50 |
Вместо use CGI; напиши
use CGI qw(:standard); print header; |
|||
|
||||
| foma07 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 28.11.2007 Репутация: нет Всего: нет |
Не хочет работать.
Может ошибка здесь print "Location: /index.htm\n\n"; |
|||
|
||||
| KSURi |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 2 Всего: 27 |
Попробуй заменить на print redirect('/index.html'); -------------------- Died at Life.pl line 21 |
|||
|
||||
| biophreak |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 72 Регистрация: 13.5.2007 Репутация: нет Всего: нет |
Прошу прощения за оффтоп, но это жесть
|
|||
|
||||
| amg |
|
||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 1 Всего: 50 |
Не нравится, что много единообразных строк? Но зато все понятно.
Можно сделать короче и непонятнее, заменив кусок
|
||||
|
|||||
| Itsys |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1338 Регистрация: 21.1.2008 Где: г. Москва Репутация: нет Всего: 34 |
Попробуй так:
Помоему должно работать Это сообщение отредактировал(а) Itsys - 23.1.2008, 18:08 |
|||
|
||||
| nitr |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2543 Регистрация: 10.2.2006 Где: Россия :) Репутация: 12 Всего: 84 |
А вообще какие права на скрипт?
Это самая перое что надо было проверить. Если всё ок, то уберите -wT (на время ;) ). Ну, а далее попробуйте самый простой скрипт CGI. ;) Удачи! |
|||
|
||||
![]()
|
| Правила форума "Perl: CGI программирование" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: разработка для Web | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |