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

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


Сообщения - AZtpa

Страницы: [1]
1
Добрый день.

Если не затруднит пожалуйста подскажите где кроется ошибка в следующем скрипте:

###############################
# Класс для связывания переменной типа \'glob\'
###############################
package Tie::IO::Inout;
use Carp qw(croak);
use strict;
sub TIEHANDLE {
    my $class = shift;
    my $form = shift;
    open my $self, $form, @_   or croak "can\'t open $form@_: $!";
    $$self->{WRITING} = 1 if $form =~ />/;
    $$self->{FILE} = qw($form@_);
    return bless $self, $class;    
}
# печать в файл filename строк массива @_
sub PRINT {
    my $self = shift;
    croak "can\'t write into file: $$self->{FILE}\\n" unlless $$self->{WRITING};
    print $self map {uc} @_;
}
# считывание одной строки из файла:  filename
sub READLINE {
    my $self = shift;
    return <$self>;
}
############
# основной модуль
############
package main;
use Tie::IO::Inout;
tie(*FOO, \'Tie::IO::Inout\', ">filename");
# добавляем строку
print FOO "New user have been added: ok\\n";
# считываем все строки
print ;

Суть проблемы в следующем:
По логике вещей данный код должен при выполнении последней инструкции напечатать:
New user have been added: ok
но он не печатает ничего.
Не знаю чем это может быть вызвано.

Заранее признателлен,
AZtpa,

2
Perl / Пересылка почты на Perl
« : 19 Января 2005, 11:15:58 »
Еще раз по поводу отправки сообщения в нужной кодировке:
Все в высшей степени просто.
Смотри код:

my ($to_address, $reply_to_address, $from_address, $subject, $body) = (\'\',\'\',\'\',\'\',\'\');
my $message =  qq(To: $to_address
Reply-to: $reply_to_address
From: $from_address
Subject: $subject
Content-Type: text/plain; charset="Windows-1251"

$body);
my $mail_prog = \'path to your send mail\' ;
local *EMAIL;
open (EMAIL, "|$mail_prog -t") or die "Can\'t open senmail: $!";
print EMAIL $message;
close (EMAIL) or die "Can\'t close senmail: $!";

Отрабатывает нормально.

AZtpa,

3
Perl / Пересылка почты на Perl
« : 14 Января 2005, 16:53:04 »
Добрый день.

Имеем код для пересылки сообщения:

use Mail::Mailer;
my $subject = "От меня";
my $body = "Тело сообщения";
$mailer->open
({
From => $from_address,                    
To  => $to_address,
Reply-to => $reply_to_address,
Subject => $subject
}) or die "Can\'t open: $!\\n";

print $mailer $body;

Подскажите пожалуйста каким образом переслать сообщение, используя кодировку отличную от принятой по умолчанию, например Windows-1251 вместо koi8-r.
Проблема в том, что по умолчанию на адрес получателя приходит текст в виде абракадабры:
Тема: яБХПХДНБ бКЮДХЯКЮБ
Cообщение: дНАПШИ ДЕМЭ

Заранее признателен,
AZtpa,

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