Интерполация

2 отговора 313 прегледа
#1

Интерполация

Понеже останах с впечатление, че брат ми не е особено наясно какво означава някой да има достъп до cgi-bin директория, реших да му направя кратка демонстрация. Програмката:

#!/usr/bin/perl
use CGI::Pretty qw(:standard);

open FH, "/etc/passwd" or die $!;

my $cgi=new CGI;

print $cgi->header();

print start_html,

h3('Demonstraciq na polzwane na cgi-bin'),

pre('Тук вкарвам този код с цел публикуването му на html. Най- неприятната част от това е <FH>, ама за това - по-долу '), p;

h3('Otwаrqm za chetene/etc/passwd'), p;

while (<FH>) {

print pre("$_")

}

print end_html;

Програмката си е работи и кеф ти /etc/passwd, кеф ти/etc/shadow. Само че при извеждане на самия код на програмата в html не мога да оправя интерполацията на "<". Е, как ли не го въртях - то не бяха q, qq, qw, //, ||, ##, ++... - абе каквото ви хрумне. Опитах и с \ пред < - не става (във всички варианти на q\S\S, qq\S\S...). Пробвах да заменя < с \74 - пак същата работа. Най-доброто, което получавам е едно хилаво while (< FH>) (<спейс_пошFH>) ;)). Не че ми е първа грижа това <, ама ме нервира. Някакви идеи какво да го правя?

Отговор
в отговор на Tpaвъл #2

Re: Интерполация

Здравей,

аз нещо неразбрах всичко, но ако въпроса е само да изкараш '<' символите на екрана, защо не пробваш с html-entities? примерно замени '<' с '&lt;' и т.н.

даже имаше и един модул по случая...май...

Отговор
в отговор на Ognen_Demon #3

Re: Интерполация

Ми защото не съм се сетил :) Благодаря.

Отговор