• 21-01-2009, 14:17:35
    #1
    <?php
    function showCalendar(){
        
    	$today    = getdate();
    	$firstDay = getdate(mktime(0,0,0,$today['mon'],1,$today['year']));
    	$lastDay  = getdate(mktime(0,0,0,$today['mon']+1,0,$today['year']));
    	
    
    
    	echo '<table>';
    	echo '  <tr><th colspan="7">'.$today['month']." - ".$today['year']."</th></tr>";
    	echo '<tr class="days">';
    	echo '  <td>Mo</td><td>Tu</td><td>We</td><td>Th</td>';
    	echo '  <td>Fr</td><td>Sa</td><td>Su</td></tr>';
    	
    	
    	echo '<tr>';
    	if ($firstDay['wday'] == 0) $firstDay['wday'] = 7;
    	for($i=1;$i<$firstDay['wday'];$i++){
    		echo '<td>&nbsp;</td>';
    	}
    	$actday = 0;
    	for($i=$firstDay['wday'];$i<=7;$i++){
    		$actday++;
    		if ($actday == $today['mday']) {
    			$class = ' class="actday"';
    		} else {
    			$class = '';
    		}
    		echo "<td$class>$actday</td>";
    	}
    	echo '</tr>';
    	
    	
    	$fullWeeks = floor(($lastDay['mday']-$actday)/7);
    	
    	for ($i=0;$i<$fullWeeks;$i++){
    		echo '<tr>';
    		for ($j=0;$j<7;$j++){
    			$actday++;
    			if ($actday == $today['mday']) {
    				$class = ' class="actday"';
    			} else {
    				$class = '';
    			}
    			echo "<td$class>$actday</td>";
    		}
    		echo '</tr>';
    	}
    	
    	
    	if ($actday < $lastDay['mday']){
    		echo '<tr>';
    		
    		for ($i=0; $i<7;$i++){
    			$actday++;
    			if ($actday == $today['mday']) {
    				$class = ' class="actday"';
    			} else {
    				$class = '';
    			}
    			
    			if ($actday <= $lastDay['mday']){
    				echo "<td$class>$actday</td>";
    			}
    			else {
    				echo '<td>&nbsp;</td>';
    			}
    		}
    		
    		
    		echo '</tr>';
    	}
    	
    	echo '</table>';
    }
    
    showCalendar();
    ?>
    
    </body>
    </html>
    Elimde böyle bi php kodu var. Selectbox ile günü ayı ve yılı seçip, seçilen ayın takviminin gözükmesini istiyorum. Yardımcı olabilecek varmı ?
  • 21-01-2009, 14:25:39
    #2
    Üyeliği durduruldu
    fonskiyonu parametrik hale getirmelisiniz
    <?php
    function showCalendar($month, $year){
        if($month!='' && $year!=''){
                   $today['mon'] = $month;
                   $today['year'] = $year;
        }else{
    	$today    = getdate();
        }
    	$firstDay = getdate(mktime(0,0,0,$today['mon'],1,$today['year']));
    	$lastDay  = getdate(mktime(0,0,0,$today['mon']+1,0,$today['year']));
    
    ?>
    gibi gibi