» Главная
eXcode.ru » Статьи » Perl
» Новости
» Опросы
» Файлы
» Журнал



Пользователей: 0
Гостей: 14







Форум на Perl.




Автор: Ковязин Дмитрий, P-Lib(p-lib.narod.ru)
Форум.

Форумы в Интернете можно встретить сплошь и рядом.Ни один уважающий себя сайт не обходится без них. Форум дает возможность узнать мнение посетителей о сайте и о том,что они думают об авторе и о его творениях :). Форум,пример которого я здесь приведу не очень сложный,но он обеспечивает все необходимые функции.Для лучшего понимания имеет смысл разбить его на несколько частей,объяснить каждую в отдельности,а затем объединить все вместе.

Данный форум состоит из следующих частей:

* Главная страница-вывод списка топиков.
* Создание нового топика и запись в файл.
* Создание ответа на топик и запись в файл.

Начнем не с главной страницы,потому что она обобщает всю информацию,а с середины-добавления нового топика.

Добавление нового топика.

Сначала в директории cgi-bin веб-сервера создадим каталог html,куда будут записываться все сообщения. Сразу оговорюсь,что все сообщения пишутся в html-файл:сначала топик и сообщение,затем к нему дописываются ответы. По ходу дела все будет понятно.
Сгенерируем форму для добавления новой темы и сообщения.



#!/usr/local/bin/perl
#Webforum.cgi version 1.01
$request=$ENV{′REQUEST_METHOD′};
$content=$ENV{′CONTENT_LENGTH′};

$cgi="url/cgi-bin";
$url="url/cgi-bin/html";
$dir="/usr/local/apache/cgi-bin/html";

print "Content-type:text/htmlnn";
print <<HTML;
<html><head><style>a:link {text-decoration:none; }</style></head><body>
<h4 align=center><font color="0000ff">New topic</font></h4>
<p align=right><a href="$cgi/webforum.cgi"><font face="ferdana" size=3>
Home</font></a>
<p><form action="$cgi/webforum.cgi" name="newtop" method="GET">
<table width=60% align=center bgcolor="e6e8fa">
<tr><td>
<tr><td>Your nick:<td><input type="text" name="nick" size=20>
<tr><td>Topic name:<td><input type="text" name="theme" size=20>
<tr><td><input type="hidden" name="action" value="ok">
<tr><td colspan=2> Message:<p>
<textarea cols=40 rows=15 name="post" wrap="virtual"></textarea>
<tr><td colspan=2><input type="submit" value="Submit"></table>
HTML


Если данные введены в форму получаем их и декодируем.



@pairs = split(/&/, $query);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$name =~ tr/+/ /;
$name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$name =~ s///g;
$name =~ s/<([^>]|n)*>//g;
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ s///g;
$value =~ s/</</g;
$value =~ s/>/>/g;
$value =~ s/cM/ /g;
$value =~ s/|/ /g;
$value =~ tr/ / /s;
$value =~ s/<([^>]|n)*>//g;
$value =~ s/"/"/g;
$value=~s/(http://+S)/<A href="$1">$1</A>/g;
$input{$name} = $value;
}

$nick=$input {′nick′};
$theme=$input {′theme′};
$message=$input {′post′};

#Create new topic.


#Открываем каталог и читаем его содержимое. Файлы в каталог записываются в виде #001.html,002.html и т.д.То есть,каждый вновь записываемый файл,увеличивается #на единицу.Это делается следующим образом.


opendir (DIR,"$dir");
while (@mes=readdir (DIR)) {
foreach $mes(@mes) {
$count=@mes;
$count++;
$page="00".($count-2);
}


# ($count-2)-это для того,чтобы не считать подкаталоги типа "." и "..". # Проверяем,не являются ли поля формы пустыми. Если нет-открываем файл на запись # и пишем информацию.


if ($nick ne "" && $theme ne "" && $message ne "") {
open (FILE,">$dir/$page.html");
print FILE "<html><head><style>
a:link {text-decoration:none; } </style><title>$theme</title>n";
print FILE "<meta name="author" content="$nick"></head>n";
print FILE "<body bgcolor="f6f8fa">n";
print FILE "<p align=right><a href="$cgi/webforum.cgi?action=reply&file=$page.html">n";
print FILE "<font face="ferdana" size=3>Post reply</font></a>n";
print FILE " <a href="$cgi/webforum.cgi"><font face="ferdana" size=3>
Home
</font></a><p>n";
print FILE "<table width=90% cellpadding=0 cellspacing=0 border=1>n";
print FILE "<tr><td align=center width=150 bgcolor="D5E6E1"><
font face="Arial" size=2 color="808080">Author</font>n";
print FILE "<td bgcolor="D5E6E1"><font face="serif" size=2 color="0000ff">Topic:</font>n";
print FILE "<font face="serif" size=2 color="ff0000">$theme</font></td></tr>n";
print FILE "<tr><td rowspan=2 bgcolor="D5E6E1" align=center>
<font face="serif" size=3 color="ff0000">$nick</font></td>n";
print FILE "<td bgcolor="e6e8fa" height=30>
<font face="serif" size=1 color="000080">Posted:",scalar localtime,"</font></td></tr>n";
print FILE "<tr><td bgcolor="f7f7f7"><font face="serif" size=2 color="000080">
$message</font></td></tr></table>n";
close (FILE);
} else {


#Если одно из полей формы осталось пустым-выдаем ошибку.Это делается для того,чтобы # не создавать пустые файлы,не содержащие информации.Perl′у все равно,что писать :)


print "Content-type:text/htmlnn";
print <<HTML;
<p>
<p>
vp>
<body bgcolor="e6e8fa">
<h4 align=center>Sorry,you didn′t enter your nick or message! </h4>
<p><center>Please,go back and try again
<p><a href="$cgi/webforum.cgi?action=newtop"><font face="ferdana" size=3>
Back</font></a>
</center>
HTML
exit;
}
}
closedir (DIR);
}


# Если все прошло нормально,выносим пользователю благодарность.Новый топик создан.


print "Content-type:text/htmlnn";
print <<HTML;
<p>
<p>
<p>
<body bgcolor="e6e8fa">
<h4 align=center>Thank you,<font color="0000ff">$nick!</font></h4>
<p><center>Your message is added.
<p><a href="$cgi/webforum.cgi"><font face="ferdana" size=3>
View topics</font></a></center>
HTML
</BODY>
</HTML>
HTML



Добавление ответа на топик.

Добавление ответа почти ничем не отличается от добавления топика,единственное отличие- нужно передать адрес страницы,чтобы скрипт знал,куда писать ответ.А он содержится в файле топика.Если посмотреть чуть выше,можно увидеть ссылку <a href="$cgi/webforum.cgi?action=reply&file=$page.html">Post reply</a> В ней и передается адрес страницы.
Генерируем форму:



# Сначала читаем файл в массив.Это делается для того,чтобы поместить его во фрейм ниже формы # на тот случай,если кто-то захочет вставить цитату из предыдущих сообщений.

$page=$input {′file′};

open (FILE,"$dir/$page");
@data=<FILE>;
close (FILE);

print "Content-type:text/htmlnn";
print <<HTML;
<html><head><style>a:link {text-decoration:none; }</style></head><body>
<h4 align=center><font color="0000ff">Post reply</font></h4>
<p align=right><a href="$cgi/webforum.cgi">
<font face="ferdana" size=3>Home</font></a>
<p><form action="$cgi/webforum.cgi" name="reply" method="GET">
<table width=60% align=center bgcolor="e6e8fa">
<tr><td>
Your nick:<td>vinput type="text" name="nick" size=20>
<tr><td><input type="hidden" name="type" value="reply">
<tr><td><input type="hidden" name="action" value="ok">
<tr><td><input type="hidden" name="file" value="$page">
<tr><td colspan=2> Message:<p>
<textarea cols=40 rows=15 name="post"></textarea>
<tr><td colspan=2><input type="submit" value="Submit"></table>
<p><center><iframe src="$dir/$page" width=90% height=300></iframe></center>
HTML

#Reply to topic.

# Снова проверяем,чтобы поля формы не были пустыми. Если все в порядке,открываем файл, # содержащий топик на добавление и дописываем ответ.


if ($nick ne "" && $message ne "" ) {
open (FILE,">>$dir/$page");
print FILE "<table width=90% cellpadding=0 cellspacing=0 border=1>n";
print FILE "<tr><td rowspan=2 bgcolor="f7f7f7" align=center width=150>
<font face="serif" size=3 color="0000ff">$nick</font></td>n";
print FILE "<td bgcolor="e6e8fa" height=30><font face="serif" size=1 color="000080">
Posted:",scalar localtime,"</font></td></tr>n";
print FILE "<tr><td bgcolor="f7f7f7"><font face="serif" size=2>
$message</td></tr></table>n";
close (FILE);
close (FILE);
} else {

# Если одно из полей осталось пустым-выдаем ошибку.


print "Content-type:text/htmlnn";
print <<HTML;
<p>
<p>
<p>
<body bgcolor="e6e8fa">
<h4 align=center>Sorry,you didn′t enter your nick or message! </h4>
<p><center>Please,go back and try again
<p><a href="$cgi/webforum.cgi?action=reply&file=$page.html">
<font face="ferdana" size=3>Back</font></a>
</center>
HTML
exit;
}

# Снова выносим благодарность посетителю.Ответ добавлен.


print "Content-type:text/htmlnn";
print <<HTML;
<p>
<p>
<p>
<body bgcolor="e6e8fa">
<h4 align=center>Thank you,<font color="0000ff">$nick!</font></h4>
<p><center>Your message is added.
<p><a href="$cgi/webforum.cgi"><font face="ferdana" size=3>
View topics</font></a></center>
HTML
</BODY>
</HTML>
HTML



Главная страница.

Ну вот мы,наконец,добрались и до главной страницы.Она выводит список топиков,дату последнего ответа на каждый топик,количество ответов,имя создателя топика.Она заслуживает отдельного описания.

Данные на экран выводятся в виде html-таблицы.



print "Content-type:text/htmlnn";
print <<HTML;
<html><head><title>Webforum ver1.01</title>
<style>a: {text-decoration:none; } </style></head>
<body bgcolor="e6e8fa">
<p>
<p><h4 align=center><font color="0000ff">Webforum</font></h4>
<p align=right><a href="$cgi/webforum.cgi?action=newtop">
<font face="ferdana" size=3>New topic</font></a>
<p><table width=700 cellpadding=0 cellspacing=0 border=1>
<tr bgcolor="D5E6E1"><td align=center width=300 height=50>
<font face="arial" size=2 color="0000ff">Topic name</font></td>
<td align=center width=150 height=50><font face="arial" size=2 color="0000ff">
Topic starter</font></td>
<td align=center width=50 height=50>
<font face="arial" size=2 color="0000ff">Replies</font></td>
<td align=center width=200 height=50>
<font face="arial" size=2 color="0000ff">Last post</font></td></tr>
HTML

# С этим,думаю,все понятно.А теперь более подробно о том, как получить всю эту информацию. # Открываем каталог и читаем сообщения в массив.


opendir (DIR,"$dir");
while (@mes=readdir(DIR)) {
foreach $mes (@mes) {

# Каждый файл в каталоге открываем и читаем в массив.

if (!-d "$dir/$mes" && "$mes" ne "." && "$mes" ne "..") {
$mtime=localtime((stat("$dir/$mes"))[9]);

open (FILE,"$dir/$mes");
@lines=<FILE>;
close (FILE);

# Теперь в каждом файле с помощью регулярных выражений ищем тему топика,имя автора топика # и количество ответов.


foreach $line (@lines) {
if ($line=~ /<title>(.*?)</title>/is) {
$title=$1;
}
if ($line=~ /content="(.*?)"/is) {
$name=$1;
}

# Количество ответов помещаем в массив reply,отнимая единицу,так как первое сообщение-это # сообщение автора топика.


if ($line=~ /^<table(s*)(.*?)>$/i) {
$reply=$1;
push (@reply,$reply);
$char=@reply-1;
}
}

# Печатаем данные в таблицу,после каждой итерации очищая массив reply,чтобы ответы на # каждый топик не складывались после каждой итерации.


print <<HTML;
<tr bgcolor="f7f7f7"><td height=30><a href="$url/$mes">
<font face="serif" size=2>$title</font></a></td>
<td align=center height=30><font face="serif" size=2>$name</font></td>
<td height=30 align=center>$char</td>
<td height=30 align=center><font face="serif" size=2>$mtime</font></td></tr>
HTML
splice (@reply);
}
}
}

print "</table>n";
closedir (DIR);



Ну вот,вроде бы и все.

Конечно,я не реализовал все возможности.Можно добавить регистрацию пользователя,возможность редактирования сообщений и т.д.В дальнейшем я планирую доработать этот форум и сделать его более продвинутым. В данный момент моей целью было объяснить,как это работает.
К началу статьи





Добавил: MadvEXДата публикации: 2007-04-13 17:45:07
Рейтинг статьи:5.00 [Голосов 1]Кол-во просмотров: 14088

Комментарии читателей

Всего комментариев: 79

2011-12-16 22:24:25
sergeevich
Снять квартиру без посредников в Москве, свободно и элементарно в ЖилАрхиве!
ЖилАрхив [url=] http://archidata.ru [/url] - это, автоматизированная сервис аренды жилья без посредников не имеющая аналогов на рынке!

ЖилАрхив, ежедневно публикует более 200 обьявлений о сдаче квартир и комнат в Москве!
Совершенно все обьявления, ежедневно проверяются модераторами.
Жилархив не работает с посредниками, агентствами недвижимости и частными риэлторами.
Основные цели ЖилАрхива:
- полностью автоматизировать процес аренды жилья в наем;
- используя современные технологии, cделать аренду жилья простым и удобным для конечного потребителя;
- убрать существующие и не нужные звеньяв этой цепи, в большинстве случаев очевидно мешающие самому процессу;
- значительно сократить затраты и поборы в виде коммиссионых выплачиваемые арендатором только за то, что в нынешний современный век развития IT технологий,
конечный клиент услуг (Арендатор), не обладает достаточной информацией о существующих на рынке предложениях (обьявлениях о сдаче квартиры).

Если Вам надоело:
- выплачивать, не реальные коммисионные, только за то, что Вас свели с владельцем квартиры;
- постоянные обманы на сайтах и форумах, публикующие "бесплатно" поддельные объявления риэлторов и мошенников, о сдаче квартир и комнат за "дешево";
- бесполезно потраченное время на обзвон, когда на том конце телефона вам говорят: "сдано", "это агент","квартира сдана - но есть другая";
- пустые поездки на "просмотры": когда ушлый агент выстраивает очередь и спекулируюя на Вашей нужде пытается развести Вас на деньги,
мотивируюя это тем, что "предложили больше...", "я уговорю хозяина но...", "квартира сдана,но есть другой вариант".
Заходите на сайт [url=] http://archidata.ru [/url], регистрируйтесь в системе и получите доступ к информации о более 200 ежедневных обьявлений от владельцев квартир, желающих их сдать!

2011-11-30 14:27:57
Seencycox
[img]http://mybag.ru/published/publicdata/DIGREGORMYBAGRU/attachments/SC/products_pictures/6860%20str%20fango%201_thm.jpg[/img][img]http://mybag.ru/published/publicdata/DIGREGORMYBAGRU/attachments/SC/products_pictures/di-gregorio-681-alpaca-grigio-1_thm.JPG[/img]

Итальянские сумки оптом со склада в Москве и интернет магазине Mybag.ru, а так же другие изделия из кожи на выгодных для Вашего бизнеса условиях. На протяжении многих лет Mybag.ru является надежным оптовым поставщиком сумок десятков розничных магазинов кожгалантереи. Широкий выбор сумок, портфелей, кошельков и других изделий из кожи позволяет нашим партнерам сформировать идеальный ассортимент продукции, а гибкая система скидок делает сотрудничество с нами не только приятным, но и выгодным. В интернет-магазине Mybag.ru Вы можете приобрести оптом сумки таких популярных итальянских марок как: DiGregorio, Carlo Salvatelli, Burglar. Кроме того, в нашем ассортименте присутствуют дорожные сумки, сумки для домашних животных, деловые аксессуары из кожи, мужские и женские перчатки и ремни. Наши менеджеры всегда рады ответить на Ваши вопросы об условиях сотрудничества и оказать помощь в подборе товара. Для получения консультации обращайтесь по телефону: +7(926)11-333-66

<a href="http://www.mybag.ru/category/zhenskie-koshelki/offset40">кошельки оптом</a>

<a href="http://www.mybag.ru/category/dorozhnye-sumki/">итальянские дорожные сумки</a>

<a href="http://www.mybag.ru/product/koshelek-digregorio-8525-_a">купить итальянский кошелек</a>

<a href="http://www.mybag.ru/blog/2">my bags ru</a>

2011-11-03 10:18:16
Hosymnmom
[img]http://s017.radikal.ru/i418/1110/8e/c9d56b8126c6.jpg[/img]

Центр Диагностики и Хирургии Заднего Отдела Глаза (клиника профессора Столяренко) - уникальное медицинское учреждение, работающее в системе здравоохранения России. Центр обладает очень широкими возможностями оказания лечебно-диагностической и реабилитационной помощи, что обеспечивается высококвалифицированными кадрами всех уровней, использованием новейших высокотехнологичных методов хирургического и консервативного лечения.
Современная диагностическая база позволяет в кратчайшие сроки диагностировать как аномалии рефракции глаза (близорукость, дальнозоркость, астигматизм) и заболевания преломляющих сред глаза (катаракта, гемофтальм), так и патологию рецепторного аппарата: глаукома, отслойка сетчатки (отслоение сетчатки), дистрофия сетчатки (макулодистрофия), ретиношизис, ретинопатия различного генеза, в том числе диабетическая ретинопатия, атрофия зрительного нерва. Высокая квалификация врачебного персонала, богатейший клинический опыт и уникальная хирургическая аппаратура позволяют выполнять сложнейшие виды оперативного лечения, добиваясь быстрого и стабильного восстановления зрения в короткий послеоперационный период реабилитации.

Последние обращения в нашу клинику:
[url=http://www.ophthalm.com/content/Patologiya_rogovitsy.php]кератоконус[/url]

[url=http://www.ophthalm.com/content/IOL_AcrySof_ReStor.php]acrysof restor[/url]

[url=http://www.ophthalm.com/content/Otsloika_setchatki.php]отслоение сетчатки симптомы[/url]

[url=http://www.ophthalm.com/content/Hirurgiya_katarakty.php]искусственные глазные хрусталики фирм сша[/url]

2011-09-27 13:55:55
Hoholdhic
Добро пожаловать к Нам на сайт.

Если Вы ищете информацию по здоровому питанию, то Вы зашли туда, куда надо! У нас вы найдёте полезные сведения, которые помогут Вам при занятиях спортом, при стремлении сбросить вес, при лечении и очищении организма. Также Вы узнаете много новой и полезной информации о продуктах питания, диетах, болезнях и способах их лечения народной медициной, но помните, что прежде чем заниматься самолечением, необходимо проконсультироваться у врача.
Если у Вас есть жизненный опыт, которым Вы хотели бы поделиться, то Вы можете оставить комментарий, если он относится к какой-то уже существующей теме, или же добавить свою статью к Нам на сайт, и мы с радостью её опубликуем.

[url=http://правилаздоровья.рф/ovoshi/60-svekla.html]противопоказания свеклы вареной[/url]

[url=http://правилаздоровья.рф/travi/364-zhivokost-lekarstvennaya.html]живокость при туберкулезе[/url]

[url=http://правилаздоровья.рф/pohudenie/267-sbalansirovannaya-dieta.html]правила сбалансированной диеты[/url]

[url=http://правилаздоровья.рф/recept/436-kak-izbavitsya-ot-yachmeni.html]как избавиться от ячменя народный рецепты[/url]

2011-09-24 19:50:28
Hoholdhic
Добро пожаловать к Нам на сайт.

Если Вы ищете информацию по здоровому питанию, то Вы зашли туда, куда надо! У нас вы найдёте полезные сведения, которые помогут Вам при занятиях спортом, при стремлении сбросить вес, при лечении и очищении организма. Также Вы узнаете много новой и полезной информации о продуктах питания, диетах, болезнях и способах их лечения народной медициной, но помните, что прежде чем заниматься самолечением, необходимо проконсультироваться у врача.
Если у Вас есть жизненный опыт, которым Вы хотели бы поделиться, то Вы можете оставить комментарий, если он относится к какой-то уже существующей теме, или же добавить свою статью к Нам на сайт, и мы с радостью её опубликуем.

[url=http://правилаздоровья.рф/frukti/21-sliva.html]слив фрукта[/url]

[url=http://правилаздоровья.рф/frukti/88-alycha.html]противопоказания алычи[/url]

[url=http://правилаздоровья.рф/travi/page/2/]sedum maximum l hoffm[/url]

[url=http://правилаздоровья.рф/lechebdiet/112-dieta-yana-goulera-pri-onkologicheskix-zabolevaniyax.html]яблочный сок при онкологии[/url]

2011-09-23 04:04:12
Reursesairl
[img]http://tehno-med.ru/images/logo.jpg[/img]

Медицинское оборудование – основа успешного лечения и профилактики множества различных заболеваний пациентов. В некоторых случаях современное профессиональное оборудование становится визитной карточкой медицинского учреждения, повышая его статус и привлекая большое количество пациентов. Поэтому, приобретая медицинское оборудование, важно обращать внимание не только на его стоимость, но и на соответствие его требованиям качества, надежности и функциональности.

[url=http://tehno-med.ru/katalog/katalog-tovarov/izdelija-iz-grechihi/dlja-avtomobilistov/avtosidenie-massazhnoe-50h105-sm]автосидение из лузги[/url]

[url=http://tehno-med.ru/katalog/katalog-tovarov/tovary-dlja-otdyha/kofemashiny/rozhkovaja-kofevarka-espresso-briel-combi-1167]устройство кофеварки эспрессо[/url]

[url=http://tehno-med.ru/katalog/katalog-tovarov/sredstva-dlja-reabilitacii/trosti-i-opory]трость для ходьбы цветная[/url]

[url=http://tehno-med.ru/katalog/katalog-tovarov/tovary-dlja-otdyha/melkaja-bytovaja-tehnika/magic-bullet]magic bullet купить[/url]

2011-09-05 07:38:01
cyroispasia
[img]http://www.elitesport.com.ua/images/catalog/425.jpg[/img]

Ассортимент магазина ЭлитСпорт, представляет ведущие торговые марки производителей спортивного оборудования со всего мира. Мы всегда рады предложить Вам большой выбор тренажеров и спортивного оборудования для профессионального и домашнего использования.

EliteSport был специально создан для людей ценящих качество, покупаемых товаров. Все тренажеры имеют сертификаты качества. По каждой торговой марке есть официальные сервисные центры от производителя, что обеспечивает качественное сервисное обслуживание тренажеров.

Консультанты ElitSport, помогут Вам выбрать тренажер или другое спортивное оборудование, которое отвечало бы всем поставленным Вами задачам. Звоните нам прямо сейчас!

Телефоны для консультаций:
тел.: +38 (044) 362 74 18
моб.: +38 (067) 220 81 28
моб.: +38 (066) 173 92 11
моб.: +38 (063) 858 67 16

[url=http://elitesport.com.ua/catalog/91/elektrogrelki/elektroprostini-matratsi]электрическая простыня натяжная ub 64 beurer (германия) интернет магазин[/url]

[url=http://elitesport.com.ua/catalogitems/begovaya-dorozhka-sportop-st-1870]беговая дорожка st1870[/url]

[url=http://elitesport.com.ua/catalog/108/medtehnika-i-kosmetologiya/tonometri-na-zapyaste]купить тонометр в киеве на запястье[/url]

[url=http://elitesport.com.ua/catalogitems/tonometr-na-zapyaste-sanitas-sbc-28]sanitas sbc-28сайт[/url]

2011-04-28 20:31:39
bigbillys
Предлагаем услуги взлома почты
[url=http://ru-mail-open.ru/]burst open mail[/url]
[url=http://ru-mail-open.ru/]качественный взлом мыла[/url]

2011-04-28 13:32:12
COORWAY
ананесение фамилии номера на футбольные майки футболка секс инструктор где купить майку hardstyle майки надписями молодежные футболки adidas нанесение фотографий на футболки восстания 1 спб футболка сборной аргентины футболки оптом ростов-на-дону футболки на заказ печать шелкографией футболку печать на майках толстовки майки молодёжные майки с приколами дёшево футболка крылья купить белая футболка с нарисованным медведем купить футболку mexx by xx http://www.damlex-realty.ru/forum/profile.php?mode=viewprofile&u=33413

футболки дешево [url=http://ntesoragcor.nm.ru/08-04-2010/22.html]дизайн футболка[/url] [url=http://midouciled.nm.ru/12-2010/09-2010.html]перенести изображение на футболку[/url] фото майки с черепом била [url=http://emrmidchailen.nm.ru/4/14-03-2010.html]купить футболку украина[/url] [url=http://tinitcathink.land.ru/5/02-2010.html]ася майки[/url] типографии челябинска футболки с логотипом [url=http://midouciled.nm.ru/zhizn-s-mayki-film-skachat-besplatno/101.html]юбки майки платья[/url] [url=http://tinitcathink.land.ru/1/166.html]опыт майкельсона морли[/url] белая футболка посмотреть вид спереди и сзади [url=http://vothatsiofib.land.ru/2/prikolnie-futbolki-v-volgograde-i-volzhskom.html]прикольные футболки в волгограде и волжском[/url] [url=http://trenemrecon.narod2.ru/veselie-nadpisi-na-futbolki/90.html]газета футболка[/url] неформальные футболки [url=http://ntesoragcor.nm.ru/17-01-2010/325.html]футболки с изображением аршавина[/url] [url=http://trenemrecon.narod2.ru/kupit-futbolku-s-simvolikoy-fall-out-boy/10-2010.html]композитор самуил майкапар[/url]

майки с логотипом тектоник как сворачивать футболку футболка цска купить vbulletin где купить футболки дениса симачева пацан сказал пацан сделал футболки с терминатором майки футболки надписи на футболках воронеж надписи и фотографии на футболке заказать именную футболку купить оригинальные футболкиъ прикольные футболки надписи http://tutorialsforum.net/showthread.php?tid=298&pid=1997#pid1997

футболка с изображением лягушки [url=http://ntesoragcor.nm.ru/4/08-2010.html]футболки с изображением животных австралия[/url] [url=http://viesnorertu.land.ru/92/15-05-2010.html]футболка со спантч бобом[/url] футболки для девочек недорогие в москве [url=http://ntesoragcor.nm.ru/04-2010/174.html]футболка free[/url] [url=http://emrmidchailen.nm.ru/09-2010/05-2010.html]купить майку сенны[/url] печать футболка пермь [url=http://viesnorertu.land.ru/7/52.html]майки зайцев нет[/url] [url=http://emrmidchailen.nm.ru/4/05-01-2010.html]автосалоны bmw брелки сумки футболки бейсболки[/url] интерент магазин одежды майки симачева [url=http://inimpulrio.nm.ru/suka-lichnost-futbolka/28.html]футболки с креативными рисунками[/url] [url=http://viesnorertu.land.ru/72/zakazat-futbolki-pechat-futbolok-shelkografiya.html]заказать футболки печать футболок шелкография[/url] футболкa с бендером [url=http://trenemrecon.narod2.ru/8/mayki-s-izobrazheniyam-olempiyskogo-mishki.html]майки с изображениям олемпийского мишки[/url] [url=http://trenemrecon.narod2.ru/kupit-futbolku-s-simvolikoy-fall-out-boy/281.html]майки dj[/url]

футболки и бейсболки мужские футболки прикольные женские футболки маленького размера мнение налоговиков является ли рекламой размещение на футболке логотипа компании где купить футболку drum n bass переливающая майка

2011-04-26 18:00:51
tuggist
афутболка англии майки и митчел картинки скачать майки на заказ супермен бодибилдинг футболки футболки с приколами от comedi clab печать картинок на футболках от 1шт чехлы майки на сиденья автомобиля купить в москве тельняшка майка футболки правой тематики футболки семачева футболка с осликом иа футболки симaчевa майка для жима лежа титан катан приобрести футболку с эквалайзером ооо майка http://msport.com.ua//ciuch-dnia/krotka-bluzka-na-upaly//forum/././memberlist.php?mode=viewprofile&u=10624

фото на футболке срочное <a href=http://diaflecebsio.land.ru/91/232.html>футболки оптом футболки пакеты бумажные</a> <a href=http://baulibeci.land.ru/zhenskie-futbolki-2008-2009g/futbolki-suslik-suka-lichnost.html>футболки суслик suka личность</a> светящиеся в темноте майки <a href=http://diaflecebsio.land.ru/01-06-2010/22-09-2010.html>нанесение изображений на майки под заказ</a> <a href=http://doctrigurre.land.ru/05-2010/276.html>футболки с доставкой</a> футболки покупка онлайн <a href=http://aclenpuncmet.land.ru/5/30-03-2010.html>футболка adidas</a> <a href=http://cobtelinktib.land.ru/01-2010/71.html>где можно купить только мужские футболки по низким ценам</a> интернет магазин панк футболки <a href=http://cobtelinktib.land.ru/7/03-03-2010.html>футболки из таиланда</a> <a href=http://doctrigurre.land.ru>оптом прикольные футболки в санкт-петербурге</a> изготовление рисунков фото надписей на футболки и майки <a href=http://cobtelinktib.land.ru/04-2010/85.html>футболки поло 600р</a> <a href=http://warcfrisolex.land.ru/8/futbolka-s-nami-bog.html>футболка с нами бог</a>

солярная свастика футболки балахон купить женскую панк майку и юбку футболка lion каталог интернет- магазины с мужскими футболками с изображением марихуаны купить белую майку viewtopic php где купить футболку армяне фото на футболку сао надписи на футболках пошив сумок футболка pink floyd футболки белая линия http://www.dreamrose.net/forums/viewtopic.php?f=37&t=28363&p=82751#p82751

заказать эксклюзивную футболку <a href=http://aclenpuncmet.land.ru/03-2010/futbolki-bluzi.html>футболки блузы</a> <a href=http://baulibeci.land.ru/zhenskie-futbolki-2008-2009g/01-2010.html>футболка губка боб</a> футболка че геварой <a href=http://aclenpuncmet.land.ru/4/14-11-2010.html>белая футболка купить</a> <a href=http://cobtelinktib.land.ru/01-2010/24-04-2010.html>вольт футболки детские</a> майки с рок-атрибутикой <a href=http://baulibeci.land.ru/futbolka-dlya-naneseniya/futbolka-suslik-suka-lichnostna-zakaz.html>футболка суслик сука личностьна заказ</a> <a href=http://baulibeci.land.ru/73/11-2010.html>футболки розница печать спб</a> футболки кто вы такие я вас не знаю <a href=http://cobtelinktib.land.ru/67/362.html>футболки с прикольными надписями по 300 рублей</a> <a href=http://baulibeci.land.ru/4/16-12-2010.html>заказать футбольную футболку с надписью аршавин</a> футболка спартак с логотипом <a href=http://baulibeci.land.ru/2/48.html>футболки и трусы сборной бразилии</a> <a href=http://aclenpuncmet.land.ru/10/30-10-2010.html>футболки бейсболки белые novik</a>

сделать фото нам футболку в гатчине футболки для папы купить футболку с хаусом никелодеон фото каппа майки купить футболки губка боб
Ваше имя: *
Текст записи: *
Имя:

Пароль:



Регистрация

Каким ICQ-клиентом вы пользуетесь?
Стандартным ICQ - клиентом.
11% (23)
Miranda 'ой
13% (29)
крысой - &RQ
5% (10)
Своим собственным :)
4% (8)
Не пользуюсь, так как сижу на модеме :(
1% (3)
Не пользуюсь, мне и так хорошо ...
6% (13)
Qip'ом
56% (121)
Другим
4% (8)

Проголосовало: 215
Страшный ICQ вирус.
ВНИМАНИЕ! Вы только что получили САМЫЙ ПЕРВЫЙ!!!! САМЫЙ КРУТОЙ!!!! и САМЫЙ СТРАШНЫЙ!!!! ICQ-вирус!!!
Я ужасно полиморфный, заразный и деструктивный, НО есть небольшая проблемка:
1. Мой автор вообще вирусы писать не умеет...
2. Не вирусы он тоже не умеет писать, у него по бэйсику тройка с натягом..
3. Умные дяди говорят моему автору, что ICQ-вирус вообще невозможен...
4. Но ему 16 лет, у него переходный возраст и потому плевал он на умных дядей!
Поэтому ОЧЕНЬ Вас прошу сделать следующее:
1) Разослать меня кому только можно;
2) Стереть на своем компьютере папки WINDOWS и Мои Документы.
Заранее спасибо! Искренне Ваш - СТРАШНЫЙ ICQ-вирус!
Рейтинг: 9.3/10 (25)
Посмотреть все анекдоты

 
eXcode.ru » Статьи » Perl