I've made some corrections...
<?
$month = 7; // July (1 = January, 12 = december)
$year = 2002;
$user_date = mktime(0, 0, 0, $month, 1, $year);
$week_day = date("w", $user_date);
echo $week_day;
?>
<TABLE BORDER=1 CELLPADDING=1 CELLSPACING=0>
<TR>
<TD>Sunday</TD>
<TD>Monday</TD>
<TD>Tuesday</TD>
<TD>Wednesday</TD>
<TD>Thursday</TD>
<TD>Friday</TD>
<TD>Saturday</TD>
</TR>
<TR>
<?
for($i = 0; $i < $week_day; $i++) {
echo " <TD> </TD>\n";
}
$pos = $week_day;
$number_of_days_in_month = date("t", $user_date);
if($week_day == 0) {
$week_day = 1;
// $number_of_days_in_month += 1;
}
for($i = 1; $i <= $number_of_days_in_month; $i++){
if($pos == 0) {
echo " <TR>\n";
}
echo " <TD>$i</TD>\n";
if($pos < 6) {
$pos++;
} else {
echo " </TR>\n";
$pos = 0;
}
}
for($i = $pos; $i < 7; $i++) {
echo " <TD> </TD>\n";
}
echo " </TR>\n";
echo "</TABLE>\n";
?>