| | |
| Stránka: 1 z 1
| [ Príspevkov: 3 ] | |
Autor | Správa |
---|
Registrovaný: 15.08.09 Prihlásený: 14.12.17 Príspevky: 14 Témy: 5 |
Ahojte mám kalendár napísaný v PHP, no potrebujem zmeniť funkciu, aby som si na každý deň v týždni naprogramoval odkaz na nejakú stránku, na ktorú potrebujem... Poraďte prosim. je to súrne..
Tu je zdrojak...
Kód: <? define (YEAR_MIN, 1980); define (YEAR_MAX, 2020); define (YEAR_EXTENT, 3);
// hodnoty z formulára, prevedieme ich na time formát if (isset($month) && isset($year)) $time = mktime (0, 0, 0, $month, 1, $year);
// kontrola začiatku a konca roka if ($time < mktime (0, 0, 0, 1, 1, YEAR_MIN) || $time > mktime (0, 0, 0, 12, 31, YEAR_MAX)) $time = time (); ?> <html> <head> <title>Kalendár v PHP</title> <style type="text/css"> body { font-family: "TIMES NEW ROMAN", "HELVETICA CE","ARIAL","HELVETICA"; font-size: 18px; text-align: center; } .cell { width: 28px; height: 28px; font-family: "ARIAL CE", "HELVETICA CE","ARIAL","HELVETICA"; font-size: 12px; color: #000; } </style> </head> <body> <? class Ccolor { var $wday_txt = "#bbbbdd"; var $wend_txt = "#ddbbbb"; var $wday = "#ccccee"; var $wend = "#eecccc"; var $wday_noact = "#9090a6"; var $wend_noact = "#a69090"; var $today = "#0000ff"; }
// objekt $color = new Ccolor ();
class Cdate { var $day; var $month; var $year;
function Cdate ($time) { $this->day = date ("j", $time); $this->month = date ("n", $time); $this->year = date ("Y", $time); } }
// objekt $date = isset ( $time ) ? new Cdate ( $time ) : new Cdate ( time () );
// názvy mesiacov roka - indexované od 1 $m = array (1 => "Január", "Február", "Marec", "Apríl", "Máj", "Jún", "Júl", "August", "September", "Október", "November", "December");
// názvy dní týždňa $d = array ("Po", "Ut", "St", "Št", "Pi", "So", "Ne");
############################################################################## // formulár pre výber mesiaca a roka echo "<form action='index.php'>";
echo "<select name='month'>"; for ($i=1 ; $i<=count($m) ; $i++) echo ($i == $date->month) ? "<option value='$i' selected>$m[$i]" : "<option value='$i'>$m[$i]"; echo "</select>"; echo "<select name='year'>"; $i = ($date->year-YEAR_EXTENT < YEAR_MIN) ? YEAR_MIN : $date->year-YEAR_EXTENT; for ( ; $i<=$date->year+YEAR_EXTENT && $i<=YEAR_MAX; $i++) echo ($i == $date->year) ? "<option value='$i' selected>$i" : "<option value='$i'>$i"; echo "</select>"; echo "<input type='submit' value='Ok'>";
echo "</form>"; ############################################################################### // predchádzajúci a nasledujúci mesiac $time = mktime (0, 0, 0, $date->month - 1, $date->day, $date->year); echo "<a href='index.php?time=$time'><<</a>"; echo "<b> ".$m[$date->month]." $date->year </b>"; $time = mktime (0, 0, 0, $date->month + 1, $date->day, $date->year); echo "<a href='index.php?time=$time'>>></a>"; ###############################################################################
// výpis dní v týžni echo "<table border='0' cellspacing='1' cellpadding='0'>"; echo "<tr align='center' valign='middle'>"; for ($i=0 ; $i<count($d) ; $i++) { $bgcolor = ($i < 5) ? $color->wday_txt : $color->wend_txt; echo "<td bgcolor='$bgcolor' class='cell'><b>".$d[$i]."</b></td>"; } echo "</tr>";
// prvý deň kalendára (pondelok) // hodnota 0 namiesto parametra $day v mktime vráti posledný deň predchádzajúceho mesiaca // date ("w") vráti [0-6] (Ne,Po,Ut,..) $date->day = 1 - date ("w", mktime (0, 0, 0, $date->month, 0, $date->year));
$act_month_end = false;
for (;;) {
// deň za dňom $t = mktime (0, 0, 0, $date->month, $date->day++ , $date->year); // číslo mesiaca [1-12] $date_n = date ("n", $t); // číslo týždňa [0-6] (Ne,Po,Ut,..) $date_w = date ("w", $t);
if ($date_n == $date->month) $act_month_end = true; // prvý pondelok v ďalšom mesiaci - ukonči riadok - koniec cyklu if ($act_month_end == true && $date_n != $date->month && $date_w == 1) { echo "</tr>"; break; } // pondelok - nový riadok else if ($date_w == 1) echo "<tr align='center'>";
// predchádzajúci, alebo nasledujúci mesiac if ($date_n != $date->month) $bgcolor = ($date_w==0 || $date_w==6) ? $color->wend_noact : $color->wday_noact; // aktuálny mesiac else $bgcolor = ($date_w==0 || $date_w==6) ? $color->wend : $color->wday;
if (date("dmY",$t) == date("dmY")) $bgcolor = $color->today;
$title = date ("j.n. Y", $t); echo "<td title='$title' bgcolor='$bgcolor' class='cell'><a href='go.php?time=$t'>".date ("d", $t)."</a></td>";
// nedeľa - koniec riadku if ($date_w == 0) echo "</tr>"; } echo "</table>"; ?> </body> </html>
|
|
Registrovaný: 26.07.06 Prihlásený: 20.03.16 Príspevky: 1378 Témy: 90 Bydlisko: Slovakia-Ko... | Napísal kmsa: 15.08.2009 19:24 | |
|
ked mzoem vediet konkretny pripad kedze teraz si predstavujem:
po odkliknuti hociktoreho dna v monilosti ci v buducnosti mi hodi ine presmerovanie
tj. hociktory den hociktory tyzden v rozmedzi od 1980-2020 mam iny odkaz
_________________ CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých |
|
Registrovaný: 15.08.09 Prihlásený: 14.12.17 Príspevky: 14 Témy: 5 |
jj ale len taky den ktory ja budem chciet dat nejaky odkaz na inu stranku vacsinou len soboty a piatky noo sem tam i inokedy... a ked kliknem na ten jednotlivy den tak by to malo ist cez lightbox a do popredia vyhodit nieco co budem chciet ... a riesim este jednu vec a to ze mi to nechce ficat v bocnom paneli na cmsku...
|
|
| Stránka: 1 z 1
| [ Príspevkov: 3 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| PHP programátor - PHP, MySQL, jQuery,X)Html/CSS v Ponuka práce | 0 | 1304 | 02.05.2011 12:08 magicmedia | | Vytvorenie suboru php a vlozenie php scriptu v PHP, ASP | 4 | 1438 | 07.05.2010 14:02 DeiForm | | PHP nevie precitat .PHP v PHP, ASP | 8 | 829 | 18.03.2011 19:21 camo | | php ->mysql ->php Help.zoradit v PHP, ASP | 4 | 589 | 20.06.2009 12:44 KViki | | $pcforum->getForumActivity('PHP, ASP', 2012)/$pcforum->getForumActivity('PHP, ASP', 2022) - Warning: Division by zero v PHP, ASP | 4 | 2288 | 20.05.2022 13:51 JanoF | | Rada v Operačné systémy Unix a Linux | 15 | 1483 | 26.09.2008 22:30 shiro | | Rada v PC zostavy | 3 | 600 | 07.02.2008 14:42 walther | | rada [ Choď na stránku: 1, 2 ] v Grafické karty | 35 | 1861 | 24.02.2009 21:48 patolog7 | | rada v Notebooky a netbooky | 2 | 704 | 20.04.2008 12:20 qwer0 | | Rada v Notebooky a netbooky | 4 | 754 | 18.09.2009 18:06 client33 | | raDa v Pamäte | 4 | 875 | 28.09.2008 12:21 Jaro | | rada v PC zostavy | 12 | 700 | 28.11.2008 19:55 septerr | | rada v HTML, XHTML, XML, CSS | 13 | 1020 | 03.05.2008 23:04 soram | | Rada v Biosy a ladenie výkonu | 2 | 649 | 29.12.2008 22:03 A2C | | rada v Notebooky a netbooky | 1 | 523 | 03.06.2010 21:52 ac.milan | | Rada v Grafické programy | 7 | 966 | 25.03.2008 13:12 Fabi |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|