Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Wmaster.ru - дизайн портал, все для вебмастера. Выпуск 60.


Информационный Канал Subscribe.Ru

.:: Всё для Web-мастера  - выпуск 61  ::..

 

В этом выпуске:

Так же на сайте:

Действия:

<< задать вопрос >>
 << прислать статью >>

<< прислать заявку на обзор сайта >>

 

Всего подписчиков - 6221+

 :: Свежие новости портала Wmaster.Ru :: 

На этой неделе заканчиваем писать новый скрипт новостей для wmaster.ru. Вскоре планируем развернуть ежедневные новости для веб-мастеров, но это только планы. Пока идёт доработка скрипта.

Раздел "обзоры недели" взял на себя админ сайта http://alexweb.ru и этот выпуск уже с новыми обзорами ваших сайтов. Новые заявки на обзоры шлите на rass@wmaster.ru?subject=Obzor  (если вы уже учавствовали в наших обзорах, то посылать заявку повторно бессмысленно).


Вышел 23-ый выпуск культового электронного журнала ProtoPlex. Легендарный электронный офф-лайн журнал для широкого круга читателей. Выходит с 2000 года, постоянно улучшается и полнеет от излишков самой разнообразной интересной информации. Читайте в ПротоПлексе последние новости, обзоры новинок программного обеспечения, игровой и киноиндустрии, обзоры скриптов, статьи по веб-дизайну и программированию, материалы по раскрутке сайтов, умные советы профессионалов, много юмора и развлечений. Помимо прочего, в каждом выпуске мы отвечаем на письма читателей. Как обычно, журнал можно скачать себе или же смотреть он-лайн.


 

Хотите рекламировать свой сайт на Wmaster.Ru или в этой рассылке...Пишите на mail@wmaster.ru

 :: *Лучший хостинг* :: 

Хостинг для профессионалов AvaHostPro.Ru
500Mb/10Gb от 6.95$ в месяц!
200 Почтовых Ящиков.
Предустановленные скрипты.
Бесплатный Домен! Подробнее: www.avahostpro.ru
Действительно выгодная партнерская программа: 30$ за каждого клиента http://www.avahostpro.ru/partner.html

  :: Строим календарь для сайта на Perl ::

Автор: Евгений Жданов

Источник: http://www.protoplex.ru

Всем интересно узнать, как на лету генерировать календарь для своего сайта. Например, календарь событий для блога или, как в этом случае, календарь новинок ПО для софт-каталога ProtoPlex. Когда я задался целью создать такой календарь, под рукой не оказалось ничего доступного и пришлось изобретать свой собственный велосипед. Может это и не лучшее решение, но хотя бы рабочее. Написан алгоритм был года два-три назад, т.е. очень давно. Не сомневаюсь, что сейчас я могу написать более быстрый и изящный алгоритм, но тогда я был способен родить только этот :) В общем, приступаю к разжевыванию.

 

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

 

Для выполнения этого алгоритма нужен перловый модуль Time-Local, поэтому не забудьте в скрипте добавить строчку use Time::Local;. Сколько я по хостингам раньше не бегал, этот модуль был у всех. Он, скорее всего, стандартный, поэтому париться из-за его отсутствия вряд ли придется. Календарь за определенный месяц генерируется функцией &calendar($time), которой в качестве параметра передается строчка вида 2002-10-1 12:00:00, т.е. дата первого числа выводимого месяца. Это вносит некую универсальность в функцию, потому как можно без труда вывести календарь не только за текущий месяц, но и за любой другой. Функция str2time2 ($) нужна для тупого преобразования строчек с датой в секунды с начала эпохи. Функция довольно полезная не только при построении календаря. Я ее использую и в других операциях.

 

Генерируемый календарь подключать можно обычным образом. Читаем файл cal_soft.txt и выдаем в браузер на нужной позиции.

open (F,"cal_soft.txt");
my @D=
;
 close F;
$paga.="@D";

 

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

sub rewrite_calendar # пишет
 календарик на 2 месяца в файл
{
my $paga222=´´;
 # создаем переменную для кода календаря
open
 (F,">cal_soft.txt"); # открыли файл
$paga222.=
 qq~<center><br>
<table>
 <tr><td>~; # сгенерили теги
my ($mon2,$year2);
 # узнали предыд. месяц
my
 ($mon,$year)=((localtime(time))[4]+1,(localtime(time))[5]+1
 900); 
if ($mon>1) 
{$mon2=$mon-1;$year2=$year;} # Если
 тек. не январь, то обычный метод
if ($mon==1) 
 {$mon2=12;$year2=$year-1;} # Если тек. январь, то
 предыдущий будет декабрь
$time5="$year2-$mon2-1"; 
 $paga222.=&calendar($time5);
$paga222.=
 qq~</td><td>~;
$time5=$datebase; #
 $datebase="2003-10-10 10:00:00" - тек. время
 $paga222.=&calendar($time5);
$paga222.=
 qq~</td></tr></table></center>~;
 print F $paga222;
close F;
}


sub str2time2 ($) #точная
 конвертация
{
 my $str = shift;
 my ($str1,$str2)=split(/
 /,$str);
 my ($zyear,$zmonth,$zday)=split(/-/,$str1);
 my
 ($zhour,$zmin,$zsec)=split(/:/,$str2);
 $zyear-=1900;

 $zmonth--;
 my
 $timeta=timelocal($zsec,$zmin,$zhour,$zday,$zmonth,$zyear);
  return($timeta);
}


sub calendar ($) #Строит выпуски на
 месяц
{ 
my $paga=´´; 
my $timee=shift; my
 @cal=();
$timee=str2time2($timee);
my
 ($tsec,$tmin,$thour,$tmday,$tmon,$tyear,$twday) =
 localtime($timee);
$tyear+=1900; 
$tmon++; 
my $k=0; 
 if
 ($tsec < 10) {$tsec = "0$tsec";}
 if ($tmin < 10)
 {$tmin = "0$tmin";}
 if ($thour < 10) {$thour =
 "0$thour";}
 if ($tmon < 10) {$tmon = "0$tmon";}
 if
 ($tmday < 10) {$tmday = "0$tmday";}
my
 $tdate="$tyear-$tmon-1"; #Первое число этого месяца
my
 $tdate5=str2time2($tdate);
my
 $tdayxx=(localtime($tdate5))[6];
my $tmon2=0;
my $tyear2=0;
 
if ($tmon<12)
{$tmon2=$tmon+1;$tyear2=$tyear;}
else
 {$tmon2=1;$tyear2=$tyear+1;}

my $tdate6="$tyear2-$tmon2-1
 12:00:00"; #Первое число следующего месяца
my
 $tdate7=str2time2($tdate6)-86400; #Посл.число этого месяца
 my $tdayyy=(localtime($tdate7))[6];
my
 $talldays=int(($tdate7-$tdate5)/86400)+1;
#for (my
 $i=0;$i<$talldays;$i++)
#{
#$ddd[$i]=$i+1;
#}
my
 $tdayxx2=0;
if ($tdayxx==0){$tdayxx2=7} else
 {$tdayxx2=$tdayxx}

for (my $i=$tdayxx2;$i<40;$i++)
{
if
 ($k<$talldays){
$k++;
my $k33=$k; my
 $newszx=´´;
if ($k33<10){$k33="0$k33";}
my
 $flag22=2;
my $ln;
# сканируем таблицу только для прошедших
 дней
if (($tyear==$year)&&($tmon==$mon)&&($k33<=$mday))
 {
my $result = $dbh->prepare("SELECT count(*) as co FROM
 table1 
where (post_date like
 ´$tyear-$tmon-$k33\%´)");
 $result->execute();
$ln =
 $result->fetchrow_hashref(); 
$result->finish();
 }elsif
(($tyear<=$year)&&($tmon<$mon))
{
my $result =
 $dbh->prepare("SELECT count(*) as co FROM table1 
where
 (post_date like ´$tyear-$tmon-$k33\%´)");
 $result->execute();
$ln =
 $result->fetchrow_hashref(); 
$result->finish();
}
 else{$ln->{co}=0}

if ($ln->{co}>0){
 $newszx=$ln->{co};
$flag22=4;
}else{$flag22=2}
 

# Если
 есть программы за данное число, даем на них ссылку
if
 ($flag22==2){$cal[$i]=$k;}
else
{$cal[$i]=qq~<a
 title=$newszx
 href=http://soft.protoplex.ru/?search=$tyear-$tmon-$k33>
 $k</a>~;}
if ("$tyear-$tmon-$k33" eq
 "$year-$mon-$mday")
 {$cal[$i]=qq~<b>$cal[$i]</b>~;}

}
} my
 $colll=´´; 
# выбираем цвет, исходя из времени
 года
if ($tmon==12){$colll=qq~#cceeff~;}
if
 (($tmon>=1)&&($tmon<3)){$colll=qq~#cceeff~;}
if
 (($tmon>=3)&&($tmon<6)){$colll=qq~#ccffdd~;}
if
 (($tmon>=6)&&($tmon<9)){$colll=qq~#ffdddd~;}
if
 (($tmon>=9)&&($tmon<12)){$colll=qq~#ffeeaa~;}

 $paga.= qq~
<table bgcolor="$colll" cellpadding=2
 cellspacing=1>
<tr align=center>
<td colspan=7
 style=""text-transform:uppercase;"" 
 id=ts22><b>$months[$tmon]</b></td>
 </tr> ~;
my $rt3=0;
for (my $rt=1;$rt<8;$rt++)
{
 my $rt2=my $tcolor=0;
if ($rt==7){$rt2=0;$tcolor="red"}
 elsif($rt==6)
{$rt2=6;$tcolor="orange"}
else
 {$rt2=$rt;$tcolor="navy"}
$rt3++;
my
 $width_1=´´;
if ($rt==1){$width_1="
 width=15"}else{$width_1=""}
$paga.= qq~
<tr id=ts31
 bgcolor=white align=center>
<td id=ts31$width_1
 style=""color:" $tcolor">$days[$rt2]</td>
<td
 id=ts31$width_1>$cal[$rt3]</td>
<td
 id=ts31$width_1>$cal[$rt3+7]</td>
<td
 id=ts31$width_1>$cal[$rt3+14]</td>
<td
 id=ts31$width_1>$cal[$rt3+21]</td>
<td
 id=ts31$width_1>$cal[$rt3+28]</td>
<td
 id=ts31$width_1>$cal[$rt3+35]</td>
</tr> 
~;
 }
$paga.= qq~
</table>~; 

return $paga;
}

Такой алгоритм работает по всему нашему порталу. Если кто-то воспользуется моим методом, проставляйтесь. Либо ставьте ссылку на ПротоПлекс, либо бутылку автору :)

 

  :: Обзоры недели :: 

Имеется архив из 250 ПРОФЕССИОНАЛЬНЫХ  шаблонов для сайта всего за 30$. Шаблоны высылаются на двух CD-Дисках и содержут совершенно все исходники для выполнения работ (psd, fla, и все нужные шрифты).Шаблоны уникальны. Все подробности по аське 148780826.

Новые заявки на обзоры шлите на rass@wmaster.ru?subject=Obzor  (если вы уже учавствовали в наших обзорах, то посылать заявку повторно бессмысленно).

 

1. Photocity.Ru

Описание:
Сайт с цифровыми фотографиями... В основном это города (Санкт-Петербург, Новгород, Псков и т.д.)... Думаю что будет интересно посмотреть каждому, поскольку фотографии эксклюзивные (сделаны Сергеем Немановым)... Обновление можно сказать - дело редкое, но уже собранная коллекция - не малая...
Дизайн:
- На мой взгляд огромная ссылка "Добавить в избранное" наверху страницы не к месту (её вполне можно сделать поменьше, либо вовсе убрать)... О дате последнего захода страницу вообще и говорить не хочется - для сайта с фотографиями это не нужно! Мрачные тона в основе "дизайна" сайта...

2. Koroman-kc.narod.Ru

Описание:
Неофициальный сайт Огнена Коромана... Фанатам футбола думаю стоит посмотреть, на нём можно найти: кричалки, фотки, видео забитых голов, также ведётся обзор чемпионатов России, множество различных интервью... Да и обновляется довольно неплохо!
Дизайн:
- Применение "невзрачной" картинки в фоне (слева и справа во второй половине страницы). Вполне можно заменить на соответствующий тёмный цвет...

3. Parta.km.Ru

Описание:
Ну этот проект даже не знаю как представить, поскольку вначале моих "путешествий" по Интернету года 3 назад я встретил этот сайт... Но вообще он существует с 1999 г. "Информация на нём - это коллекция прикольных надписей, увиденных на партах, стенах различных учебных заведений, веселые наклейки и надписи на автомобилях и автобусах, смешные афоризмы и объявления, надписи на ценниках, забавные оговорки и изречения преподавателей, другие приколы, начертанные в самых неожиданных местах". О его содержанию больше нечего сказать, всё и так ясно...
Дизайн:
- Отсутствие стилей в названиях разделов... (нужно придать отличии от обычного текста). Было бы лучше если бы он был по центру, а верхний баннер перемещён вниз страницы...

4. Vivaldis.czechian.Net

Описание:
Как я понял основное направление сайта - "Полезные статьи по настройке Windows"... Хотя если посмотреть, то тут видно что всего по чуть-чуть (Мультимедиа, Download, Русификаторы, Web-дизайн и т.д.). Если честно то я например не люблю когда сделано именно так, поскольку лучше знать один проект о каком-нибудь направлении (но "насыщенный"), чем один но по немногу о всём! В общем единственное чего здесь много так это статей по Windows...
Дизайн:
- Чувствуется что картинки по обоим краям логотипа содраны с другого сайта и даже не совпадают друг с другом по тонам... Также хочу добавить что не стоит баловаться с кнопками (счётчиками и т.д.)...

5. Matchboxtwenty.forever.Kz

Описание:
Сайт музыкальной группы "Matchbox Twenty" (рок-н-ролл)... Присутствуют разделы: дискография, медиа, галерея фоток... Сам не разу не слышал о такой группе, но по количеству призов, да и по описанию - довольно неплохая...
Дизайн:
- Отвратительный фон... Беспорядочное расстановка баннеров внизу страниц... И само главное это pop-up окно с текстом о "ремонте квартир и офисов" - это меня убило... После этого и описывать сайт стало как то неприятно... Надеюсь что этот нюанс админ учтёт!

В обзорах не учитываются положительные черты дизайна (поскольку они и так на лицо)...
И помните, что я не критикую, а лишь обращаю внимание на недостатки, которые Вы можете ИСПРАВИТЬ!

Администратор [AleX] - 2004 Alexweb.Ru | Форум

  :: Вопросы :: 

Вопрос №94 - Может кто-нибудь подсказать бесплатный хостинг с поддержкой ASP и ODBC?  Ответить

Вопрос №95 - Нужен PHP-код который считывая из базы MySQL значение создавал бы такое количество галочек, пронумеровывал бы их,а потом при выборе одной или несколько,отправлял бы их номера обратно в базу.Подсобите кто знает,очень нужно!  Ответить

Вопрос №96 - Меня очень интересует литература по оформлению (Web-Design) и построению (Web-Master) сайтов.Желательно с большим уклоном на дизайн.Зарание благодарен. Ответить

y

:: Вопрос-Ответ ::

Ответов на Вопросы не поступало !

on TOP (наверх)

:: Новые заметки на http://www.cody.ru  ::

CODY's REG][STER / Заметки CODY - http://www.cody.ru 

02.05.04

какой домен звучнее ???

БыБыСы

23-ий Protoplex

03.05.04

Sasser

05.05.04

Supreme в переводах ;)

06.05.04

2

GPRS Keeper.

07.05.04

17.

идут с…

08.05.04

иногда

Хотлог

опосля…

:: Новые темы на Forum.Wmaster.Ru  ::

  Гостевые

  CODY с д/p!

  вот такие бывают сайты, без таблиц.

  Программа для создания сайтов!

  эмулятор модема

  Оцените ресурс - http://cossacks2.rts-game.ru/

  Opera & JavaScript

  Сколько должна весить страничка?

  Оглавление y

 

Ведущий рассылки:

Cody (Bochkarev Anton)

ICQ: 148780826
mail: webmaster@wmaster.ru 
www: http://www.wmaster.ru 

Перепечатка материалов разрешается, только после письменного разрешения автора (e-mail). При перепечатке любого материала с рассылки видимая ссылка на источник www.wmaster.ru  и все имена, ссылки авторов обязательны.
© Copyright Wmaster Group 2002-2004. © Все права защищены.


avahostpro.ru

Количество подписчиков: [ Subscribe: 3424 ]  [ Protoplex: 331 ] [ List.Mail: 2466 ]



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу


В избранное