@KapitalWeb; verdiğiniz yapıya göre basit bir örnek hazırladım örnek aşağıda ama bazı önerilerde bulunmak istiyorum.
- Verdiğiniz yapıda aslında her üyenin id si belli olduğu için her tabloda ayrı ayrı tcno tutmanıza gerek yok. Tc kimlik no yu sadece uyeler tablosunda tutup gerektiğinde id ile sorgulayıp oradan çekebilirsiniz diğer tablolarda sadece üye id yada sef id tutabilirsiniz.
- Verdiğiniz yapıda en alt kademenin en fazla 2 tane şefi olabilir eğer üst üste 3 şefi varsa sistem çalışmaz. Eğer hazırlayacağınız sistemde sınırsız bir şekilde şef mantığı varsa örneğin: şef, şefin şefi,şefin şefinin şefi, şefin şefinin şefinini şefi ...... gibi sınırsız bir yapı kurmak istiyorsanız saatler tablosunda tek bir sefid tutmanız ve php kodlama yapınızı recursive hale getirmeniz gerekir. Googleda
recursive fonksiyon diye aratırsanız birçok kaynağa ulaşabilirsiniz.
Buyrun verdiğiniz yapıya göre size fikir vermesi açısından hazırladığım basit bir örnek:
<?php
if ($_POST)
{
$tcno = $_POST['tcno'];
$saat = $_POST['saat'];
//formdan gelen tcno lu üyenin şefidsini aldık
$sql1 = mysql_query("Select sefid From uyeler Where tckimlik='$tcno' Limit 1");
list($sefid) = mysql_fetch_array($sql1);
//
//şefin tckimlik numarasını aldık
$sql2 = mysql_query("Select tckimlik From uyeler Where id='$sefid' Limit 1");
list($seftcno) = mysql_fetch_array($sql2);
//
//sefidsi 0 olan en üstteki şef olduğu için şefidsi sıfır değilse bir üstteki şefinde id sini alıyoruz yani şefin şefi.
if ($sefid != '0')
{
$sql3 = mysql_query("Select sefid From uyeler Where id='$sefid' Limit 1");
list($sefinsefiid) = mysql_fetch_array($sql3);
//şefin şefinin tckimlik numarasını aldık
$sql4 = mysql_query("Select tckimlik From uyeler Where id='$sefinsefiid' Limit 1");
list($sefinsefitcno) = mysql_fetch_array($sql4);
//
}
//
//saatler tablosuna ilk kayıtı ekliyoruz
$ekle = mysql_query("Insert Into saatler (tckimlik, girişsaati, şeftc, şefinşefitc) values ('$tcno', '$saat', '$seftcno', '$sefinsefitcno')");
//
}
?>
<form action="" method="post">
Tc No: <input type="text" name="tcno" />
Saat: <input type="text" name="saat" />
</form>