![]() ![]() ![]() |
||
|
В связи с большим интересом к портативным Mp3 проигрывателям (плейерам), хотелось бы сделать небольшой обзорчик по самому разнообразному количеству моделей. Итак,
В одном номере, я конечно, все не успею обозреть даже кратко, но, надеюсь, в следующих номерах продолжу. ссылки прислал Igorx
|
ссылку прислал M.Vainshtein |
|
На www.spectrum.lovely.net
есть очень качественный эмулятор компьютера Спектрум (ZX Spectrum). Можно
поиграть в старые игры или поиграть в его Бейсик (ну, поиграть, а что еще
с бейсиком делают?). прислал Igor |
ссылку прислал Darry |
|
TVANGESTE - отечественная группа (г.Калининград). Я бы обозначил стиль как black + gothic. Сайт группы - http://tvangeste.bief.ru/ (на редкость красивый дизайн) - на сервере найдете несколько free композиций в формате mp3.
|
|
Вот такая вот визитка. Думаете, фирма занимается торговлей компьютерными
игрушками типа "3D-shooter"? Не-а, обычная мебельная фабрика. Но,
спорим, угадаю, во что он (ген.директор, разумеется) любит играть на
компе? Интересно, а этот знак у ID software зарегистрирован? прислал S. |
|
По просьбам тех, кто пожелал увидеть разбор скрипта поиска (работает в разделе "архив"). Для организации самого простейшего поиска у себя на страничке по всем имеющимся
файлам на сервере я организовал следующий алгоритм: Ниже я приведу сокращенный текст скрипта (свои маски файлов я убрал)
#!/usr/bin/perl
$|="1";
# системная переменная. при '1' - вывод не буферизуется
print "Content-type: text/html\n\n";
print '<HTML>';
read (STDIN, $buffer, $ENV{CONTENT_LENGTH});
@pairs = split(/&/, $buffer);
foreach $pair (@pairs){
($name,$value)=split(/=/,$pair);
push(@kpairs,($name,$value));
}
# разбор входных переменных (шаблон плюс опции)
%keypairs=@kpairs;
$keypairs{"texts"}=~s/\+/ /g;$_=$keypairs{"texts"};
while(/%([0-9A-F][0-9A-F])/){
$ch=pack("C",hex($1));
s/%([0-9A-F][0-9A-F])/$ch/; }
# преобразование выражения символов типа %XX в нормальные русские буквы
$TextOriginal=$_;
if($keypairs{"ignorecase"}){
tr/АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЪЬЫЭЮЯ/абвгдежзиклмнопрстуфхцчшщъьыэюя/;
}
$keypairs{"texts"}=$_;
[.....печать формы ввода в HTML документе пользователя......]
print '<FORM name="fsf" METHOD="POST" ACTION="search.pl">';
[.....печать формы ввода в HTML документе пользователя......]
@gfiles=<маска файлов для поиска>;
$foundflag=0;$prevline="";$nextline="";$samefile=1;
foreach $FILEname (@gfiles) {
open(SFI,"$FILEname");
@lines=<SFI>; close (SFI);
$len=@lines; $prevline=""; $nextline="";
foreach $line (@lines){
# читаем строку
$_=$line;
if(!$keypairs{"searchintags"}){ #remove tags
s/<.*>//g; }
s/</</g; s/>/>/g; $line=$_;
if($keypairs{"ignorecase"}){
tr/АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЪЬЫЭЮЯ/абвгдежзиклмнопрстуфхцчшщъьыэюя/;
}
if(eval("/$keypairs{'texts'}/$keypairs{'ignorecase'}")) {
# если выражение найдено
$bold="<B>"; $cbold='</B>';
$line=~s/($TextOriginal)/$bold$1$cbold/ig;
if($samefile){
print "<TABLE border=0><TR><TD valign=top>";
print "<TT><a href=\"/$FILEname\">$FILEname</A></TT></TD><TD><UL>";}
# печатаем его
print "<LI><FONT SIZE=-1>... $prevline $line</FONT>";
$foundflag=1; $samefile=0; $nextline="1";
}elsif($nextline){
$nextline=""; print "<FONT SIZE=-1> $line ...</FONT></LI>";
# это вывод следующей строки - чтобы контекст был виден
}
$prevline=$line;
}
if(!$samefile){print "</UL></TD></TR></TABLE>";}
$samefile=1; print "<SCRIPT>document.fsf.texts.value=\"$FILEname\"<\/SCRIPT>\n";
# в этом файле поиск закончен - посредством скрипта в форму ввода выводим название файла.
}
print "<SCRIPT>document.fsf.texts.value=\"$keypairs{'texts'}\"<\/SCRIPT>\n";
# поиск окончен везде, возвращаем шаблон в форму ввода
if (!$foundflag){print "<P>No '<B>".$keypairs{"texts"}."</B>' found</P>";}
print "<HR><I>Поиск окончен</I>";print "</HTML>";
Скрипт простейший - буквально состряпан на скорую руку. Нет логических операций в шаблоне поиска, нет морфологии, нет... да много чего нет. А полностью скрипт (с комментариями) можно скачать здесь. |
|
Кстати, есть полезный сайт (один из великого множества), где можно прочитать по поводу программирования для web'а следующие необходимейшие вещи (по разделам): - CGI Environmental Variables - список всех стандартных переменных
окружения (environment) с кратким описанием каждого из них. Напомню, что переменные
(в идеале - их хэш) получаем из хэша %ENV, например
- $ENV{"REQUEST_URI"};.
|
|
|
[ Архив+поиск ]-[ все комментарии ]-[ Жизнь ТАМ ] |
|
| |