v2.5.2
Giriş yap

PHP Sınırsız Kategori Fonksiyon

jct
3,332 defa görüntülendi

PHP Sınırsız Kategori için 2 adet fonksiyonum var;

Birinci fonksiyon kategorileri hiyerarşik alt alta sıralıyor ve sorunsuz çalışıyor.

function KATEGORI_LISTELE_GENEL($Kategori_ID = 0){

		GLOBAL $PDO_Connect;

		$PDO_Query = $PDO_Connect -> prepare("SELECT * FROM kategoriler WHERE Kategori_Ebeveyn = ?");
		$PDO_Query -> execute([$Kategori_ID]);
		$PDO_Query = $PDO_Query -> fetchAll(PDO::FETCH_OBJ);

		foreach($PDO_Query as $PDO_Data){
			echo $PDO_Data -> Kategori_ID." ";
			echo $PDO_Data -> Kategori_Ad." ";
			echo $PDO_Data -> Kategori_Ebeveyn."<br />";
			KATEGORI_LISTELE_GENEL($PDO_Data -> Kategori_ID);
		}
	
	}
	
	KATEGORI_LISTELE_GENEL();

ikinci fonksiyon herhangi bir kategoriyi hiyararşik sıralıyor ve sorunsuz çalışıyor

$Kategori_Dizi = array();
	
function KATEGORI_LISTELE_SIRALI($Kategori_ID){

	GLOBAL $PDO_Connect, $Kategori_Dizi;

	$PDO_Query = $PDO_Connect -> prepare("SELECT * FROM kategoriler WHERE Kategori_ID = ?");
	$PDO_Query -> execute([$Kategori_ID]);
	$PDO_Query = $PDO_Query -> fetch(PDO::FETCH_OBJ);

	$Kategori_Dizi[] = $PDO_Query -> Kategori_Ad;

	if($PDO_Query -> Kategori_Ebeveyn > 0){
		KATEGORI_LISTELE_SIRALI($PDO_Query -> Kategori_Ebeveyn);
	}

	return $Kategori_Dizi;

}

    print_r(KATEGORI_LISTELE_SIRALI(2))

Şimdi sorunun olduğu kısım ilk fonskiyon içinde ikinci fonksiyonu kullanınca saçmalıyor. Sanki diziyi temizlemiyorda sürekli üzerine ekliyor gibi duruyor.

function KATEGORI_LISTELE_GENEL($Kategori_ID = 0){

		GLOBAL $PDO_Connect;

		$PDO_Query = $PDO_Connect -> prepare("SELECT * FROM kategoriler WHERE Kategori_Ebeveyn = ?");
		$PDO_Query -> execute([$Kategori_ID]);
		$PDO_Query = $PDO_Query -> fetchAll(PDO::FETCH_OBJ);

		foreach($PDO_Query as $PDO_Data){
			echo $PDO_Data -> Kategori_ID." ";
			print_r(KATEGORI_LISTELE_SIRALI($PDO_Data -> Kategori_ID))." ";
			echo $PDO_Data -> Kategori_Ebeveyn."<br />";
			KATEGORI_LISTELE_GENEL($PDO_Data -> Kategori_ID);
		}
	
	}
	
	KATEGORI_LISTELE_GENEL();
phpprogramming
1757 gün önce

php