yardım, php takvim bağlantılar

4 Cevap php

Below is a partial table row that will create a line row of 3 columns. Two columns in each side is links, left is previous year and right is next year links. Center is links for january thru december.

Eğer bir ay bağlantıları tıkladığınızda, takvim takvim üzerinde cari yıl Týkladýðýnýz o ay gösterecektir. Eğer tıklatın Örneğin, takvim ... varsayılan Mart 2010 cari ay ve yıl açacak. (2009) bir önceki yıl tıklandığında ise, o zaman geçen yıl cari ay (Mart) (2009) görüntüler ... ve olacaktır Haziran, takvim 2009 Haziran olan, takvim şu anda Haziran olursa olsun yıl gösterecektir.

benim sorum ben böyle bir şey yapmak için aşağıdaki kodun ne yapabilirim, olduğunu.

$Calendar.= "</tr><tr><td>"."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=" . $LastYear["year"] ."\"> $LastY </a></td>\n";
$Calendar.= "<td colspan=\"5\">"."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[0] ."\">Jan.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[1] ."\">Feb.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[2] ."\">Mar.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[3] ."\">Apr.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[4] ."\">May</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[5] ."\">Jun.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[6] ."\">Jul.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[7] ."\">Aug.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[8] ."\">Sep.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[9] ."\">Oct.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[10] ."\">Nov.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[11] ."\">Dec.</a>
              </td>";
$Calendar.= "<td>"."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=" . $NextYear["year"] ."\"> $NextY </a></td>\n";

Şimdiden teşekkürler.

EDIT:

Ben ilk bu belirtmeliyim ... sadece PHP kullanmanız gerekir.

Teşekkürler.

4 Cevap

Tamam. buradan başlamak için bazı ipuçları olduğunu

As I said above, you have to make an HTML calendar for the current month. Start from just printing out day numbers. $num=date("t"); would give you number of days. So, I hope you can use for loop, from 1 to $num, printing each number in separate <td> tags.

Sonraki 7 gün bloklarda bu listeyi kırmaya çalışın. Bunun için bir sayaç kullanabilirsiniz. Her yineleme ile artırmak ve kısa sürede 7 ulaşmak gibi, </tr><tr>, bir satır sonu eklerim.

Sonunda. Eğer hafta başından bu listeyi hizalamak gerekiyor. date("w") onunla size yardımcı olacaktır.

Bunu yapabilir misin?

Ben üzerinde yardıma ihtiyacı yerine sadece kısmi tablo satırının benim bütün kodu olsaydı belki daha net olurdu. Zaten takvim oluşturduk. Ben sadece yıl ve aya göre yeni takvimi açmak için tıklayabilirsiniz o takvime ek bir satır eklemek istedim.

If you can open this php on a browser, you'll notice the links below the calendar in three columns.
Left column is the link to open previous year from whatever the year is currently displayed.
Right column is the link to open next year from whatever the year is currently displayed. Center column is the links to each month from January thru December, whichever month is clicked, it will open that month calendar from whichever the year is "currently" displayed.

Ben bu daha açıktır umuyoruz. Ben herhangi bir karışıklık için özür dileriz.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>test</title>
<link rel="stylesheet" type="text/css" href="calendar.css" />
</head>
<body><center>
<?php
$date = time(); 

$Month = date('m', $date); 
$Day = date('d', $date); 
$Year = date('Y', $date);

/*  Calendar layout*/
function calendar_layout($month,$day,$year)
{

/*  This checkdate function displays "bool(true)" in the web page, so I commented out  */
//  var_dump(checkdate($month,$day,$year));

$MonthArray = array("January ","February ","March ","April ","May ","June ","July ","August ","September ","October ","Novembe r","December ");
$ThisMonth = $MonthArray[$month-1];

/*  Creates table for calendar  */
$Calendar = '<table border="1" cellpadding="5">';
$Header = array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');

/*  Creates the first row print the Month and Year of this calendar  */
$Calendar.= '<tr><td colspan="7">';
$Calendar.= '<div class="largewords">'.$ThisMonth.''.$year.'</div>';
$Calendar.= '</td></tr>';

/*  Creates the second row for Week days and print the week days header  */
$Calendar.= '<tr>
               <td class="weekdays">'.implode('</td><td class="weekdays">',$Header).'</td>
             </tr>';

/*  Finds out and set how many blank days before 1st day  */
$FirstDay = mktime(0,0,0,$month, 1, $year);  
$DayOfWeek = date('D', $FirstDay);
switch($DayOfWeek){
case "Sun": $BlankDays = 0; break;
case "Mon": $BlankDays = 1; break;
case "Tue": $BlankDays = 2; break;
case "Wed": $BlankDays = 3; break;
case "Thu": $BlankDays = 4; break;
case "Fri": $BlankDays = 5; break;
case "Sat": $BlankDays = 6; break;
}   

/*  Finds out how many total days this month  */
$DayInMonth = date('t',mktime(0,0,0,$month,1,$year));
$DayCounter = 0;

/*  Creates the second row for first week  */
$Calendar.= '<tr>';

/*  Prints the blank spaces before day 1  */
while($DayCounter < $BlankDays)
{
  $Calendar.= '<td>&nbsp;</td>';
  $DayCounter++;
}

/*  Starts printing dates  */
for($PrintDay = 1; $PrintDay <= $DayInMonth; $PrintDay++):
  $Calendar.= '<td class="eachday">';
  $Calendar.= '<div class="numericdays">'.$PrintDay.'</div>';
  $Calendar.= str_repeat('<p>&nbsp;</p>',2);

  $Calendar.= '</td>';
  if($BlankDays == 6):
    $Calendar.= '</tr>';
    if(($DayCounter+1) != $DayInMonth):
      $Calendar.= '<tr>';
    endif;
    $BlankDays = -1;
    $DayInWeek = 0;
  endif;
  $DayInWeek++; $BlankDays++; $DayCounter++;
endfor;

/*  Prints blank spaces after the last day of the month  */
if($DayInWeek < 8):
  for($x = 1; $x <= (8 - $DayInWeek); $x++):
    $Calendar.= '<td>&nbsp;</td>';
  endfor;
endif;


/*  Bottom row - links for other years and months  */

$LastYear = getDate(mktime(0, 0, 0, $month, 1, $year-1));
$ThisYear = getDate(mktime(0, 0, 0, $month, 1, $year));
$NextYear = getDate(mktime(0, 0, 0, $month, 1, $year+1));

$LastY = $LastYear["year"];
$ThisY = $ThisYear["year"];
$NextY = $NextYear["year"];

/*  Initializing the years range from 1970 to 2038  */
$MinYear = date("Y",mktime(0,0,0,1,1,1970));
$MaxYear = date("Y",mktime(0,0,0,1,1,2038));

$Calendar.= "</tr><tr><td>"."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=" . $LastYear["year"] ."\"> $LastY </a></td>\n";
$Calendar.= "<td colspan=\"5\">"."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[0] ."\">Jan.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[1] ."\">Feb.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[2] ."\">Mar.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[3] ."\">Apr.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[4] ."\">May</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[5] ."\">Jun.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[6] ."\">Jul.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[7] ."\">Aug.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[8] ."\">Sep.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[9] ."\">Oct.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[10] ."\">Nov.</a> | 
                               "."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=".$ThisYear["year"]."&month=" . $MonthArray[11] ."\">Dec.</a>
              </td>";
$Calendar.= "<td>"."<a "."href=\"".$_SERVER["PHP_SELF"]."?year=" . $NextYear["year"] ."\"> $NextY </a></td>\n";
}


/*  Close the table  */
$Calendar.= '</tr></table>';

return $Calendar;

}

echo '<a href="index.php">Today</a>', ' is: ', date('l, F jS Y');
echo "<br />";
echo "<br />";

echo calendar_layout("$Month","$Day","$Year");

?> 

</center>
</body>
</html>

and while I was looking through that site that Leo posted, I've found out something. If I understood correctly, the logic is to code to check whether $Month & $Year variables are set or not for this particular section.

Yani bu eğer statment bulundu:

if(isset($_GET["Year"]))
{
  use local system's year
}
else
{
  $Year = $_GET["Year"]
}

Şimdi sorun sözdizimi anlamaya ve benim özgün kod uygulamak için nasıl ...?

Öncelikle size $ yıl aldığımız bir takvim rutin ve $ ay argümanlar yazmak ve bir aylık takvim çizmek zorunda.