Модераторы: korob2001, ginnie

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Чтение из файла на другом сервере 
:(
    Опции темы
silverst
Дата 16.2.2012, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 2.4.2011

Репутация: нет
Всего: нет



При попытке запустить данный скрипт ничего не выдаёт кроме слова  "test"
Файл по адресу http://astro.uni-altai.ru/catalogs/yale/yale.star  существует

Код

!/usr/bin/perl  
#First.cgi

open(FFF, "http://astro.uni-altai.ru/catalogs/yale/yale.star");
$line=<FFF>;
print "Content-Type: text/html\n\n";
print "<HTML><BODY>";
print  "test $line";
print "</BODY></HTML>";
close(FFF);

PM MAIL   Вверх
DurRandir
Дата 16.2.2012, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 335
Регистрация: 27.9.2009

Репутация: 1
Всего: 17



Тут вам не здесь PHP.
PM   Вверх
silverst
Дата 16.2.2012, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 2.4.2011

Репутация: нет
Всего: нет



Посмотрел в интернете про чтение из файла на данном языке:здесь, описывает данный алгоритм, вроде всё сделал по шаблону=))
PM MAIL   Вверх
Pfailed
Дата 16.2.2012, 20:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 2
Всего: 39



Это работает только для локальных файлов.
Для http можно так
Код

use HTTP::Tiny;

$line = HTTP::Tiny->new->get("http://astro.uni-altai.ru/catalogs/yale/yale.star")->{content};



--------------------
PM MAIL   Вверх
silverst
Дата 17.2.2012, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 2.4.2011

Репутация: нет
Всего: нет



Всё равно почему то выводит ошибку:
Код

#!/usr/bin/perl  
#First.cgi

use  HTTP::Tiny;

$line=HTTP::Tiny->new->get("http://astro.uni-altai.ru/catalogs/yale/yale.star")->{content};

print "Content-Type: text/html\n\n";
print "<HTML><BODY>";
print  "test $line";
print "</BODY></HTML>";

PM MAIL   Вверх
Pfailed
Дата 17.2.2012, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 2
Всего: 39



silverst, какую?


--------------------
PM MAIL   Вверх
silverst
Дата 17.2.2012, 12:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 2.4.2011

Репутация: нет
Всего: нет



500 Internal Server Error 

PM MAIL   Вверх
DurRandir
Дата 17.2.2012, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 335
Регистрация: 27.9.2009

Репутация: 1
Всего: 17



Так посмотрите в логе сервера, _какую именно_ ошибку это вызывает.

PS: Вы модуль то поставили?
PM   Вверх
silverst
Дата 17.2.2012, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 2.4.2011

Репутация: нет
Всего: нет



Модули Perl установленны
PM MAIL   Вверх
Pfailed
Дата 17.2.2012, 13:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 2
Всего: 39



Именно этот видимо не установлен, он с perl 5.14 по умолчанию идет, но у вас наверное версия ниже.


--------------------
PM MAIL   Вверх
silverst
Дата 17.2.2012, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 2.4.2011

Репутация: нет
Всего: нет



Я не знаю какая версия установленная на сервере, поэтому обратился в тех поддержку

Добавлено через 13 минут и 29 секунд
Версия 5.8.8
PM MAIL   Вверх
silverst
Дата 18.2.2012, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 2.4.2011

Репутация: нет
Всего: нет



Сдеалал так:
Код

#!/usr/bin/perl  
#First3.cgi
my $url = 'http://astro.uni-altai.ru/catalogs/yale/yale.star';
  # Всего лишь для примера: новые записи на /Fresh Air/
use LWP::Simple;
 
my $content = get $url;

$s=substr((get $url), 0, 140);

print "Content-Type: text/html\n\n";
print "<HTML><BODY>";
print  "$s ";
print "</BODY></HTML>";

Но мне надо, чтобы каждая строчка была отедельно, а не все в одну строку


Это сообщение отредактировал(а) silverst - 18.2.2012, 10:45
PM MAIL   Вверх
infarch
Дата 18.2.2012, 15:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 13.3.2009

Репутация: нет
Всего: 1



Код

#!/usr/bin/perl  
#First3.cgi
my $url = 'http://astro.uni-altai.ru/catalogs/yale/yale.star';
  # Всего лишь для примера: новые записи на /Fresh Air/
use LWP::Simple;
 
my $s=substr((get $url), 0, 140);
$s=~s/\n/<br>/g;
print "Content-Type: text/html\n\n";
print "<HTML><BODY>";
print  "$s ";
print "</BODY></HTML>";

PM MAIL   Вверх
silverst
Дата 19.2.2012, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 2.4.2011

Репутация: нет
Всего: нет



infarch, спасибо
PM MAIL   Вверх
silverst
Дата 20.2.2012, 17:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 2.4.2011

Репутация: нет
Всего: нет



А как теперьо прочитать отедельно по строкам этот файл?

PM MAIL   Вверх
infarch
Дата 21.2.2012, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 526
Регистрация: 13.3.2009

Репутация: нет
Всего: 1



Например так:

my @lines = split "\n", get($url);

Получаем массив строк.

Вам теорию подтянуть не помешает, однако...
PM MAIL   Вверх
silverst
Дата 21.2.2012, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 2.4.2011

Репутация: нет
Всего: нет



Дело в том что я только пеорешёл на данный язык, а раньше писал исключительно на php
PM MAIL   Вверх
yazu
Дата 21.2.2012, 17:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 14.9.2011

Репутация: нет
Всего: нет



Как-то так:
Код

#!/usr/bin/perl -w
use strict;

use LWP::Simple;

my $url = 'http://astro.uni-altai.ru/catalogs/yale/yale.star';

# здесь мы получаем файл целиком
my $content = get $url;

# делим по строчкам и сохраняем в массиве
my @lines = split "\n", $content;

# обрабатываем
my $count = 0;
for my $line (@lines) {
    print ++$count, " $line\n";
}

PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: разработка для Web | Следующая тема »


 




[ Время генерации скрипта: 0.1099 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.