Po raz kolejny witam mistrzów webmasteringu!

Tworzę baze urlopów i natknąłem się na pewne problemy:

  1. w formularzu wprowadzania wpisuję datę rozpoczęcia i zakończenia urlopu. Nie bardzo wiem jak zrobić żeby pojawiało się kolejne pole z obliczoną liczbą urlopu za pomocą dołączonej funkcji workDays. Wszystkie dane muszą zostać zapisane do bazy. Na razie wszystko mi działa, zapisuje do bazy, ale bez ilości obliczonych dni.

Mam 5 tabel:

ewidencja: idewidencji, idpracownika, idstopnia, idurlopu, idwydzialu, od, do, iloscdni
pracownicy: idpracownika, imie, nazwisko
urlopy: idurlopu, nazwa
stopnie: idstopnia, nazwa
wydzialy: idwydzialu, nazwa

plik funkcje.php

<?

function lacz_bd(){
  $baza = @mysql_pconnect("localhost", "root", "");

  if (!$baza){
    echo "Połączenie z bazą się nie powiodło.";
    return false;
  }
  if (!@mysql_select_db("urlopy")){
    echo "Wybranie bazy danych nie powiodło się.";
    return false;
  }
  return $wynik;
}

function wyswietl_urlopy($zapytanie){

  lacz_bd();
  $wynik=mysql_query($zapytanie);
  if (!$wynik){
    echo "Błąd. Połączenie nie powiodło się!";
    exit;
  }
  $znalezionych=mysql_num_rows($wynik);

  echo "<CENTER><table border=1><tr bgcolor=lightgreen></CENTER>
";

 echo "<th>nazwisko</th>";

   echo "<th>stopien</td>
";
  echo "<th>wydzial</th>";
  echo "<th>urlop</th>";
 echo "<th>od</th>";
 echo "<th>do</th>";

;

  for ($i=0; $i<$znalezionych; $i++){
    $wiersz= mysql_fetch_array($wynik);
    echo "<tr>";

    echo "<td><center>".pobierz_nazwisko($wiersz["idpracownika"])."</td></center>";
     echo "<td><center>".pobierz_stopien($wiersz["idstopnia"])."</td></center>";
    echo "<td><center>".pobierz_wydzial($wiersz["idwydzialu"])."</td></center>";
    echo "<td><center>".pobierz_urlop($wiersz["idurlopu"])."</td></center>";
    echo "<td><center>".$wiersz["od"]."</td></center>";
    echo "<td><center>".$wiersz["do"]."</td></center>";

    echo "</tr>";
  }
  echo "</table>";
}

function pobierz_stopien($idstopnia){
  $zapytanie="select nazwa from stopnie where idstopnia='$idstopnia'";
  $wynik=mysql_query($zapytanie);
  if(!$wynik) return "brak stopnia";
  if(mysql_num_rows($wynik)==0) return false;
  $wynik=mysql_result($wynik, 0, "nazwa");
  return $wynik;
}


function pobierz_wydzial($idwydzialu){
  $zapytanie="select nazwa from wydzialy where idwydzialu='$idwydzialu'";
  $wynik=mysql_query($zapytanie);
  if(!$wynik) return "brak wydzialu";
  if(mysql_num_rows($wynik)==0) return false;
  $wynik=mysql_result($wynik, 0, "nazwa");
  return $wynik;
}


function pobierz_urlop($idurlopu){
  $zapytanie="select nazwa from urlopy where idurlopu='$idurlopu'";
  $wynik=mysql_query($zapytanie);
  if(!$wynik) return "brak urlopu";
  if(mysql_num_rows($wynik)==0) return false;
  $wynik=mysql_result($wynik, 0, "nazwa");
  return $wynik;
}


function pobierz_nazwisko($idpracownika){
  $zapytanie="select nazwisko from  pracownicy where idpracownika='$idpracownika'";
  $wynik=mysql_query($zapytanie);
  if(!$wynik) return "brak nazwiska";
  if(mysql_num_rows($wynik)==0) return false;
  $wynik=mysql_result($wynik, 0, "nazwisko");
  return $wynik;

  }
?>

plik nowy_prac.php

<html>
<head>
  <title>"baza urlopów"</title>
</head>

<body>
<BODY BGCOLOR="blanchedalmond">
  <h1>BAZA urlopów</h1>

  <form action="index.php?page=wstaw_elew" method="post">
    <table border="0">


     <td>pracownik</td>
			<td>
			<br>
				<SELECT NAME=pracownik>
					<option class=form>-- wybierz --</option>
					<OPTION class=form VALUE=1>Kowalski</OPTION>
                                        <OPTION class=form VALUE=2>Nowak</OPTION>


				</SELECT>
			</tr></td>

      <tr>
			<td>Wydział</td>
			<td>
			<br>
				<SELECT NAME=wydzial>
					<option class=form>-- wybierz --</option>
					<OPTION class=form VALUE=1>a</OPTION>
					<OPTION class=form VALUE=2>b</OPTION>

				</SELECT>
			</tr></td>
 <tr>
       <td>Stopień</td>
			<td>
			<br>
				<SELECT NAME=stopien>
					<option class=form>-- wybierz --</option>
					<OPTION class=form VALUE=1>mgr</OPTION>
					<OPTION class=form VALUE=2>inż.</OPTION>

				</SELECT>
			</tr></td>
                        <tr>

   	<td>urlop</td>
			<td>
			<br>
				<SELECT NAME=urlop>
					<option class=form>-- wybierz --</option>
					<OPTION class=form VALUE=1>okolicznościowy</OPTION>
					<OPTION class=form VALUE=2>wypoczynkowy</OPTION>

				</SELECT>
			</tr></td>
<tr><td>od</td><td><input type="text" name="od" maxlength="10" size="10"><br /></td></tr>
<tr><td>do</td><td><input type="text" name="do" maxlength="10" size="10"><br /></td></tr>

<tr><td colspan="2"><input type="submit" value="Zapisz"></td></tr>

    </table> 
  </form>
</body>
</html>

plik wstaw_prac.php


<html>
<head>
  <title>"baza"</title>
</head>
<body>
<h1>baza </h1>
<?php
  // utworzenie krótkich nazw zmiennych


  $idpracownika=$HTTP_POST_VARS['pracownik'];
  $idwydzialu=$HTTP_POST_VARS['wydzial'];
  $idstopnia=$HTTP_POST_VARS['stopien'];
  $idurlopu=$HTTP_POST_VARS['urlop'];
  $od=$HTTP_POST_VARS['od'];
  $do=$HTTP_POST_VARS['do'];
  if ( !$idpracownika || !$idwydzialu || !$idstopnia || !$urlop || !$od || !$do)
  {
     echo 'Nie podano wszystkich potrzebnych danych.<br />'
          .'Wróć do poprzedniej strony i spróbuj ponownie.';
     exit;
  }

   $idpracownika = addslashes($idpracownika);
   $idstopnia = addslashes($idstopnia);
   $idwydzialu = addslashes($idwydzialu);
   $idurlopu = addslashes($idurlopu);
   $od = addslashes($od);
   $do = addslashes($do);

  @ $db = mysql_pconnect('localhost', 'root', '');

  if (!$db)
  {
     echo 'Błąd: : Połączenie z bazą danych nie powiodło się. Spróbuj jeszcze raz później.';
     exit;
  }

  mysql_select_db('urlopy');
  $zapytanie = "insert into ewidencja values ('".$idewidencji."', '".$idpracownika."', '".$idstopnia."',  '".$idurlopu."','".$idwydzialu."', '".$od."', '".$do."')";
  $wynik = mysql_query($zapytanie);
  if ($wynik)
      echo  mysql_affected_rows().'  zapisano do bazy.';
?>
     <a href="index.php?page=nowy_prac">Dodaj następny</a>
	<a href="wyswietl_prac.php">Pokaż</a>
</body>
</html>

plik z funkcją workDays.php

<?php
function workDays($date1, $date2, $withStartDay = false) { 
    $date1=strtotime($date1); 
    $date2=strtotime($date2); 
    if ($date2===$date1 && !$withStartDay) return 0; 
    $char=1; 
    if ($date1>$date2) 
        {$datePom=$date1;$date1=$date2;$date2=$datePom;$char=-1;} 
    $count=0; 
    if (!$withStartDay) 
        $date1=strtotime('+1 day',$date1); 
    $date2=strtotime('+1 day',$date2); 
    $lastYear = null; 
    $hol=array('01-01','05-01','05-03','08-15','11-01','11-11','12-25','12-26'); 
    while ($date1<$date2) { 
        $year = date('Y', $date1); 
        if ($year !== $lastYear){ 
            $lastYear = $year; 
            $easter = date('m-d', easter_date($year)); 
            $date = strtotime($year . '-' . $easter); 
            $easterSec = date('m-d', strtotime('+1 day', $date)); 
            $cc = date('m-d', strtotime('+60 days', $date)); 
            $hol[8] = $easter; 
            $hol[9] = $easterSec; 
            $hol[10] = $cc;
        } 
        $weekDay=date('w',$date1); 
        if (!($weekDay==0 || $weekDay==6 || in_array(date('m-d',$date1),$hol))) 
            $count++; 
        $date1=strtotime('+1 day',$date1); 
    } 
    $count*=$char; 
    return $count; 
} 
?>

<?php 

#echo workDays('2008-08-14','2008-08-14'); //wyświetli 2, gdyż dwa ostanie dni to weekend 

echo workDays('2008-11-11','2008-11-26',true);//wyświetli 3, gdyż liczymy z dniem początkowym
?>

Chyba najlepiej by było gdyby po naciśnięciu przycisku zapisz można poprawić ewentualnie wprowadzone dane.
Proszę o ewentualne uwagi i pomoc w obliczeniu ilości dni wykorzystywanego urlopu.
Pozdrawiam