所以我目前使用這個http://davidwalsh.name/php-calendar作爲我的日曆,但我有麻煩提出了一種方法來添加到下個月的'下一個'/'上一個'鏈接...任何幫助很大不勝感激!日曆 - 下一個鏈接
回答
由於繪製壓延機的功能是
function draw_calendar($month,$year){
你必須提供$month
並在下一/上一環節$year
,例如
/calendar.php?month=12&year=2011
單擊此鏈接時,此數據可在$_GET
中找到。你不想unsanitized數據,所以你把它拿來像這樣在您的日曆腳本的頂部:
$input = filter_input_array(
INPUT_GET,
array(
'month' => array(
'filter' => FILTER_VALIDATE_INT,
'options' => array('min_range' => 1, 'max_range' => 12)
),
'year' => array(
'filter' => FILTER_VALIDATE_INT,
'options' => array('min_range' => 2010, 'max_range' => 2015)
)
)
);
過濾功能將確保我們得到1和12,以及2010年和2015年之間的年間的一個月(相應調整或者按照您認爲合適的方式刪除選項)。如果通過的號碼不在該範圍內(或者沒有鏈接被點擊),我們將爲他們獲得false
,這意味着我們將不得不設置理智默認值,例如,
$input['year'] = $input['year'] ?: date('Y');
$input['month'] = $input['month'] ?: date('n');
這將既可以使用傳遞給腳本的有效值或無效值的情況下,一年和/或月設置爲當前年份和/或月份。
現在畫的日曆:
echo draw_calendar($input['month'], $input['year']);
對於下一/上一鏈接,您可以手動檢查月份是否是12或1,然後增加/相應減少當年或使用DateTime
對象
$dateTime = new DateTime;
$dateTime->setDate($input['year'], $input['month'], 1));
printf(
'<a href="/calendar.php?month=%d&year=%d">Next</a>' .
'<a href="/calendar.php?month=%d&year=%d">Previous</a>',
$dateTime->modify('-1 month')->format('n'),
$dateTime->format('Y'),
$dateTime->modify('+2 month')->format('n'),
$dateTime->format('Y')
);
另一種選擇是,以目前的月和年在會話中存儲,然後就甲肝e下一個/上一個鏈接,無需年份和月份,而只是像+1和-1這樣的來回。但是,你沒有直接的方式跳到某個月。
這就是它的全部。
「INPUT_GET」後是否缺少逗號? –
@Jared是的,謝謝。固定。隨時編輯任何其他小錯別字 – Gordon
- 1. 使用VB.NET鏈接兩個日曆
- 2. 幫助,php日曆鏈接
- 3. 如何創建一個asp.net日曆鏈接到數據庫?
- 4. fullcalendar點擊一個鏈接或按鈕打開日曆
- 5. Drupal上一個和下一個鏈接
- 6. 獲取下一個星期日的下一個日期(不使用日曆)
- 7. 創建「訂閱日曆」鏈接以在Google日曆和Apple日曆上工作
- 8. 將變量添加到Codeigniter日曆下一頁/上一頁鏈接
- 9. 將MOSS日曆Web部件鏈接到共享Exchange日曆
- 10. 用html鏈接打開android日曆
- 11. 日曆上的鏈接標記事件
- 12. 全日曆:格式標題爲鏈接
- 13. 將CalendarView鏈接到設備日曆
- 14. 提供「添加到日曆」鏈接
- 15. 將Google表格鏈接到Google日曆
- 16. CalendarView到設備日曆鏈接
- 17. 在asp.net中使用超鏈接日曆
- 18. 一個和下一個鏈接
- 19. 下個月PHP日曆
- 20. 如何鏈接在日曆上一個和下一個月沒有刷新頁面
- 21. 將鏈接中的「下一個」和「前一個」鏈接拼合起來
- 22. 如何創建一個單日曆日曆作爲scooll日曆
- 23. 將活動從一個日曆複製到另一個日曆
- 24. 將NSDates從一個日曆轉換爲另一個日曆
- 25. 下一個/上一個錨鏈接,當用戶滾動時如何更新下一個/上一個鏈接
- 26. 如何獲取日曆中的前一個和下一個月
- 27. 在日曆控件中禁用上個月的鏈接
- 28. java日曆中如何獲得下一個和previuos日?
- 29. 將公開Google日曆添加到我們的日曆視圖的鏈接
- 30. 鏈接p:時間表prev next按鈕p:日曆如google日曆
加倍努力。試着瞭解正在發生的事情,並實施您所需要的功能。 – TJHeuvel