Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Программирование > Perl

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 16.10.2001, 16:57
sanwebm вне форума Посмотреть профиль Отправить личное сообщение для sanwebm Посетить домашнюю страницу sanwebm Найти все сообщения от sanwebm
  № 1  
sanwebm

Регистрация: Feb 2001
Сообщений: 52
По умолчанию Как предать из формы в файл, соблюдая переносы строк и обратно???

Народ, здраствуйте!

Меня интересует сл. вопрос: Как предать из формы в файл данные, при этом вместо знака переноса на начало следующей строки должны ствиться <br>. Либо Читая из файла информацию в @content, чтобы после определенных действий (буду благодарен за код) выдавало в html'е текст, но с сортировкой по строкам, т.е.

Инфа в файле:

Привет

Вам

Всем!!!

В html'е:
<br>
Привет
<br>
Вам
<br>
Всем!!!


Как этого добиться?? заранее Вам благодарен.

Старый 16.10.2001, 17:17
SPV вне форума Посмотреть профиль Отправить личное сообщение для SPV Найти все сообщения от SPV
  № 2  
SPV
 
Аватар для SPV

Регистрация: Jan 2000
Адрес: St-Petersburg
Сообщений: 1,229
Отправить сообщение для SPV с помощью ICQ
$anyvar =~ s/\r//eg;
$anyvar =~ s/\n/'<br>'/eg;
__________________
Two beer or not two beer?...

Старый 18.10.2001, 03:51
sanwebm вне форума Посмотреть профиль Отправить личное сообщение для sanwebm Посетить домашнюю страницу sanwebm Найти все сообщения от sanwebm
  № 3  
sanwebm

Регистрация: Feb 2001
Сообщений: 52
По умолчанию А как сделать следующее???

Предположим, записывает в файл правильно, но все равно я извлекаю данные из файла (куда занес только что данные из формы) в массив:
Код:
open(DATA,"content.dat");
@cont=<DATA>;
chomp @cont;
close(DATA);
Таким образом содержимое храниться в массиве @cont
Далее...
Чтобы вывести содержимое файла правильно (соблюдая переносы (абзацы)) я использую
Код:
foreach $line (@cont) {
print "$line<br>";
}
И это понятно (есть более умное предложение???) ...
Т.е. конструкция вида:
Код:
@cont =~ s/\n/'<br>'/eg;
уже не подходит, т.е. вызывыает ошибку.
что делать в этом случае???

Далее: когда касается отправки содержимого то e-mail я использую конструкцию:
Код:
open(SENDMAIL, "$mail_path -oi -t -odq") or &Error($email);
print SENDMAIL <<"EOF";
From: <$your_email>
To: <$email>
Subject: $subject
@cont
EOF
close(SENDMAIL) or warn "sendmail cant close";
Но в таком случае содержимое письма передается без переноса абзацев. Как быть в этом случае???

Если можно помогите.

Заранее благодарен.

Старый 18.10.2001, 11:54
SPV вне форума Посмотреть профиль Отправить личное сообщение для SPV Найти все сообщения от SPV
  № 4  
SPV
 
Аватар для SPV

Регистрация: Jan 2000
Адрес: St-Petersburg
Сообщений: 1,229
Отправить сообщение для SPV с помощью ICQ
1. Аты вставляй переносы сразу при считывании из файла:
open(DATA,"content.dat");
$cont= join('<br>',<DATA>);
close(DATA);
print $cont;

2. Не забывай пустую строку, разделяющую заголовок письма от содержимого. И не мешает указать тип содержимого:
print SENDMAIL <<"EOF";
From: <$your_email>
To: <$email>
Subject: $subject
Content-type: text/html

@cont
EOF
__________________
Two beer or not two beer?...

Старый 18.10.2001, 13:38
sanwebm вне форума Посмотреть профиль Отправить личное сообщение для sanwebm Посетить домашнюю страницу sanwebm Найти все сообщения от sanwebm
  № 5  
sanwebm

Регистрация: Feb 2001
Сообщений: 52
По умолчанию Далее...

Ок, это допустим работает.

А как быть в следующем случае:

Прочитать содержимое файла, потом это содержимое файла необходимо (сохраняя форматирование, разбиение на строки и т.д.) поместить в тэг
Код:
<textarea>  текст файла </textarea>
В этом случаем нам вышеуказанный метод не подойдет, т.к. он просто-напросто напечатает
Код:
 
<br>
после каждой строки.

Как быть теперь?
Заранее благодарен.

Создать новую тему   Часовой пояс GMT +4, время: 01:02.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 01:02.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.