Elbette yapılır hocam, zaten makbul olanı da sizin düşündüğünüz gibi olanıdır. Bir kod şablonu olur ve aynı görevi yapan kodlar bu şablon üzerinden işlem yapar. Birkaç farklı şekilde yapılabilir, biraz da fonksiyon mantığının kolaylığını anlayabilmeniz adına şöyle bir örnek vereyim.

Bu butonlar sizin tab düğmeleriniz olsun






Düğmelere her tıklandığında fx fonksiyonunu çağıracak ve aldığı bilgileri oraya gönderecek, fonksiyon da yukarıdaki kodun aynısını yapıyor. İsteğe bağlı değerleri silip kendinize göre düzenlersiniz :)

<script>
/**
*
* @param surec - Periyot olarak hangi süreci seçtiğimizin değeri
* @param limit - Kaç adet veri listeleyeceğimizi isterseniz bu kısma değişken olarak verip php tarafında sabit olarak belirtmekten kurtulabilirsiniz. Belki ileride fikriniz değişir ve farklı bir değer vermek istersiniz
*/
function fx(surec, limit = 100) { // Eğer limit değeri verilmezse varsayılan olarak 100 kayıt seçsin
$.ajax({
url: 'x.php', // x.php dosyasına
method: 'POST', // POST metodu ile
data : {
listele : surec, // listele değerine onclick olayından aldığımız butonun id değerini veriyoruz
limit : limit // Limit de eğer belirtmezseniz 100 olarak gider, belirtirseniz belirttiğiniz saı kadar gider
}, // listele değeri hafta olan bir bilgi gönderiyoruz
beforeSend: function () {
//Eğer sayfaya veriler yüklenirken bir yükleniyor tarzı uyarı çıkarmak istiyorsanız buraya koldar yazabilirsiniz
//İstemezseniz de beforeSen fonksiyonun komple silin
},
success: function (response) {
console.log(response);
// $("#hafta_goster").html(response) // x.php dosyasından dönen değeri tab sisteminin hafta için olan kısmına yazdırıyoruz
}
})
}
</script>


x.php nin içine şu kodları koyup PHP tarafında postları nasıl alacağınızı görebilirsiniz :) İyi çalışmalar


if (isset($_POST['listele'])) {
print_r($_POST);
}