Zend - The PHP Company




Calendars

Add Code


Great Calendar  

Type: application
Added by: criso
Entered: 14/10/2003
Last modified: 02/11/2002
Rating: - (fewer than 3 votes)
Views: 5934
Very easy customizable and friendly calendar see the code theres nothing easier than this function...!!!


<?
function calendar($dia,$mes,$year,$lm,$ly,$mm,$my,$id){

    if(
$day==''){
        
$day "01";
    }if(
$mes==''){
        
$mes date("m");
    }if(
$year==''){
        
$year date("Y");
    }
    
    if(
$lm != "" and $lm != 1){
        
$mes $lm 1;
    }if(
$lm != "" and $lm == 1){
        
$mes 12;
        
$year $year 1;
    }if(
$mm != "" and $mm != 12){
        
$mes $mm 1;
    }if(
$mm != "" and $mm == 12){
        
$mes 1;
        
$year $year 1;
    }if(
$ly != ""){
        
$year $ly 1;
    }if(
$my != ""){
        
$year $my 1;
    }
    
    
$zzz strtotime($year."-".$mes."-".$day);
    
$yyy getdate($zzz);
    
$www $yyy['wday'];
    
    
$lastday mktime(0,0,0,$mes+1,0,$year);
    
$lastday strftime("%d"$lastday);
    
$rows_cal ceil($lastday/7);
    
    if(
$www == and $lastday 30){
        
$data_day[0] = $lastday;
    }if(
$www == and $lastday == 30){
        
$data_day[0] = $lastday;
    }if(
$www == and $lastday 30){
        
$data_day[0] = $lastday-1;
        
$data_day[1] = $lastday;
    }if(
$www 5){
        for(
$f=2;$f<$www;$f++){
            
$data_day[$f] = "";
        }
    }
    
    
$m 1;
    for(
$i=$www;$i<=($lastday + ($www 1));$i++){
        
$data_day[$i] = $m;
        
$m++;
    }
    
    if(
$mes == '01' or $mes == 1){
        
$que_mes 'January';
    }if(
$mes == '02' or $mes == 2){
        
$que_mes 'February';
    }if(
$mes == '03' or $mes == 3){
        
$que_mes 'March';
    }if(
$mes == '04' or $mes == 4){
        
$que_mes 'April';
    }if(
$mes == '05' or $mes == 5){
        
$que_mes 'May';
    }if(
$mes == '06' or $mes == 6){
        
$que_mes 'June';
    }if(
$mes == '07' or $mes == 7){
        
$que_mes 'July';
    }if(
$mes == '08' or $mes == 8){
        
$que_mes 'August';
    }if(
$mes == '09' or $mes == 9){
        
$que_mes 'September';
    }if(
$mes == '10' or $mes == 10){
        
$que_mes 'October';
    }if(
$mes == '11' or $mes == 11){
        
$que_mes 'November';
    }if(
$mes == '12' or $mes == 12){
        
$que_mes 'December';
    }
    
    if(
$mes and $mes 10){
        
$lm substr($mes,1,1);
    }else{
        
$lm $mes;
    }
    
    
?>
    <table width="190" bgcolor="#f0f0f0">
        <tr bgcolor="#BBEEFF">
            <td>
            <?if(($year >= 1970 and $mes 1) or ($year 1970)){?>
            <a href="calendar.php?lm=<?=$mes?>&year=<?=$year?>">
            <font face=verdana size=1><</a>
            <?}?>
            </td>
            <td>
            <?if($year 1970){?>
            <a href="calendar.php?ly=<?=$year?>&mes=<?=$mes?>">
            <font face=verdana size=1><<</a>
            <?}?>
            </td>
            <td colspan="3"><center>
            <font face=verdana size=1>
            <?=$que_mes?> <?=$year?>
            </font></center></td>
            <td>
            <?if($year 2020){?>
            <a href="calendar.php?my=<?=$year?>&mes=<?=$mes?>">
            <font face=verdana size=1>>></a>
            <?}?>
            </td>
            <td>
            <?if(($year <= 2020 and $mes 12) or ($year 2020)){?>
            <a href="calendar.php?mm=<?=$mes?>&year=<?=$year?>">
            <font face=verdana size=1>>
            <?}?>
            </a>
            </td>
        </tr>
        <tr>
            <td width="20"><center><font face=verdana size=1>S</center></td>
            <td width="20"><center><font face=verdana size=1>M</center></td>
            <td width="20"><center><font face=verdana size=1>T</center></td>
            <td width="20"><center><font face=verdana size=1>W</center></td>
            <td width="20"><center><font face=verdana size=1>T</center></td>
            <td width="20"><center><font face=verdana size=1>F</center></td>
            <td width="20"><center><font face=verdana size=1>S</center></td>
        </tr>
        <?
        $z 
0;
        while(
$z <= $lastday){
            for(
$i=1;$i<=$rows_cal;$i++){
                
?>
                <tr id="[<?=$i?>]">
                    <?
                    
for($j=0;$j<=6;$j++){
                        if(
$j==0){
                            
$clr "red";
                        }else{
                            
$clr "black";
                        }
                        
                        if(
$data_day[$z] == date("d") and ($mes == date("m"))){
                            
$blk "<strong>";
                            
$col "#fea398";
                        }else{
                            
$blk "";
                            
$col "";
                        }
                        
                        
?>
                        <td bgcolor="<?=$col?>"><center>
                        <font face=verdana size=1 color="<?=$clr?>">
                        <?
                        
if($var_cnt[$z] !=""){
                            echo 
"<a href=calendar.php?ax=desc_ac&dat=".$year."-".$mes."-".$data_day[$z].">
                                 <font color=blue>"
.$data_day[$z]."</a>";
                        }else{
                            echo 
$data_day[$z];
                        }
                        
?>
                        </font>
                        <?
                        $z
++;
                        
?>
                        </center></td>
                        <?
                    
}
                    
?>
                </tr>
                <?
            
}
        }
        
?>
    </table>
    <?
}
?>


Usage Example


<table>
        <tr>
            <td><font face=verdana size=1>Month</font></td>
            <td>
                <form action="<?=$PHP_SELF?>" name="" method="post">
                <input type="Hidden" name="ax" value="<?=$ax?>">
                <select name="selm" class="select_calendar">
                <?
                
for($i=1;$i<=12;$i++){
                    
?>
                    <option value="<?=$i?>"><?=$i?></option>
                    <?
                
}
                
?>
                </select>
            </td>
            <td><font face=verdana size=1>Year</font></td>
            <td>
                <select name="sely" class="select_calendar">
                <?
                
for($i=2020;$i>=1970;$i--){
                    
?>
                    <option value="<?=$i?><?if($i==date('Y')){echo "selected";}?>>
                    <?=$i?>
                    </option>
                    <?
                
}
                
?>
                </select>
            </td>
            <td><input type="Submit" name="bc" value="Go" class="boton_calendar"></td>
            </form>
        </tr>
        <tr>
            <td colspan="5">
            <?
            
if($bc){
                echo 
calendar($dia,$selm,$sely,$lm,$ly,$mm,$my,$id);
            }else{
                echo 
calendar($dia,$mes,$year,$lm,$ly,$mm,$my,$id);
            }
            
?>
            </td>
        </tr>
        <tr>
            <td colspan="5">
            </td>
        </tr>
    </table>


Rate This Script





Search



This Category All Categories