Исходники и листинги ::: PHP ::: Календарь на php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
  <?&nbsp;&nbsp;//&nbsp;&nbsp;WR-Calendar v 1.1&nbsp;&nbsp;//&nbsp;&nbsp;21.04.07 г.&nbsp;&nbsp;//&nbsp;&nbsp;Miha-ingener@yandex.ru
 
  #error_reporting (E_ALL);
 
 
  $hcolor="#884422";&nbsp;&nbsp;&nbsp;&nbsp; // Цвет сегодняшней даты
  $bcolor="#cccccc";&nbsp;&nbsp;&nbsp;&nbsp; // Цвет бордюра таблицы
  $shapka="1";&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Печатать html-шапку?&nbsp;&nbsp;1/0
 
 
  $months=array("Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь");
  $value[1]="Пн|Вт|Ср|Чт|Пт|Сб|Вс|";
  $qi="2"; $value[2]="";
 
  $daysamount=date('t',time())+1;
  $weeks=floor($daysamount/7);
  $firstday=date('w',mktime(0,0,0,date('n'),0,date('y')));
 
  // получаем данные
  for($i=0;$i<$firstday;$i++) {$value[$qi].="|";}
  for($q=1;$q<$daysamount;$q++) {$value[$qi].="$q|"; if(intval (($i+$q)/7)==($i+$q)/7) {$qi++; $value[$qi]="";}}
 
  // Печатаем КАЛЕНДАРЬ НА ТЕКУЩИЙ МЕСЯЦ
  $vmax=count($value); $i="0"; $ii="0"; $add="";
  if ($shapka=="1") {print"<html><head><style>TD {COLOR:#333333; FONT-FAMILY:Verdana,Arial; FONT-SIZE:11px; LINE-HEIGHT:150%; padding-left:0; BORDER-RIGHT:#666666 1px solid; BORDER-TOP:#666666 0px solid; BORDER-LEFT:#666666 0px solid; BORDER-BOTTOM:#666666 1px solid;} .sun{COLOR:#ffffff; FONT-WEIGHT: bold; Background:#ff9900;} .seg{COLOR:#ffffff; FONT-WEIGHT: bold; Background:$hcolor;}</style></head><body>";}
  print"<table align=center border=1 cellpadding=2 cellspacing=0 bordercolor=$bcolor><caption><font face='Verdana' size=-1><B>".$months[date('n')-1]."</caption></B></font><TR align=middle valign=middle>";
  do {
  &nbsp;&nbsp; if ($ii=="6") {$add="class=sun";} else {$add="";}
  &nbsp;&nbsp; do {$i++;
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $rdt=explode("|", $value[$i]);
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (!isset($rdt[$ii])) {$add=""; $rdt[$ii]=" ";} else {if ($rdt[$ii]=="") {$add=""; $rdt[$ii]=" ";}}
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ($i=="1") {$addbb="<B>";} else {$addbb="";}
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if($rdt[$ii]==date('d')) {$addse="class=seg"; } else {$addse="";}
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; print"<td $addse $add width=23>$addbb $rdt[$ii]</td>rn";
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} while ($i<$vmax);
 
  &nbsp;&nbsp; if ($ii<"6") {print"</tr><TR align=middle valign=middle>rn";}
  &nbsp;&nbsp; $i="0"; $ii++;
  &nbsp;&nbsp; } while ($ii<"7");
 
  print"</tr></table>";
  ?>
<<< Предыдущая работа

Вернуться в галерею исходников
Календарь на php
Автор: Miha-ingener
Город: Зеленогорск,
Дата: 07.05.2007  18:35
Комментариев: 2
Просмотров: 1009
Оценка: 3 (0|1|0|1|1) [1]

Вернуться на главную
Авторский комментарий к работе: Скрипт показывает календарик на текущий месяц, подсвечивая текущую дату. Единственная причина, побудившая меня написать такой скрипт - отсутствие в инете простых календарей в вертикальном формате. Календарик компактен - занимает совсем немного места - 2
Вы не можете оценивать

КОММЕНТАРИИ К РАБОТЕ:
vitja-ru* ::: комментарий от 06.03.2008 | 17:59
vitja-ru Перспективный (ур.8)
Очки: 1528
Город: п.Клюквинка
Тв. работ: 17
Рег: 14.02.2008 (7007)
Так полезно но надобы по лучше.


--------------------
Трудно в ученье легко в бою!
DaniilKhanin ::: комментарий от 16.05.2007 | 09:51
  Инструктор (ур.15)
Очки: 19261
Город:
Тв. работ: 0
Рег: 07.11.2006 (1378)
слушай в PHP есть более удобные календарные функции. Я делал не тока календарь, но и фазы Луны с помощью их. Я именно про твою реалзацию