NuketechV2.0.
Ana Sayfa •Kuran •Dosya İndir •Hesabınız •Forumlar •İrtibat •Haber Arşiv •Mesajlarınız •Ara •Web Siteleri •Yardım •Ansiklopedi •Anketler
Hoş geldin, Misafir
Hala hesabınız yok mu? Hemen açabilirsiniz. Üyemiz olarak tema seçebilme, yorum ayarları ve isminizle yorum gönderme gibi avantajlara sahip olacaksınız.

    Giriş
   Kullanıcıadı:
   Şifre:
Güvenlik Kodu: Güvenlik Kodu
 
Üyelik:
Son Üye: amoxiclomakz
Bugün: 0
Dün: 0
Toplam: 169

Şu An Bağlı:
Ziyaretçi:
Üye:
Toplam: 0


Yeni Kayıt
Kişisel Sayfanız
Çıkış

Yönetici


Şu ana kadar

5934643

sayfa izlenimi aldık. Başlangıç: 2004

Site Hit
· Bugün

1321

· Dün

6118


Ortalama Hit
· Saatlik

60

· Günlük

1,250

· Aylık

38,043

· Yıllık

456,511


Server Saat
· Saat

06:59:07

· Gün

17 Oct 2019

· Saat Dilimi

+0300


Min/Max   SSS    Arama    Üye Listesi    Kullanıcı Grupları    Profil    Özel mesajlarınızı kontrol etmek için login olun    Giriş
Sınırsız Kategoriler Ekle Güncelle ve Sil
Sayfa 1, 2  Sonraki
 
Yeni Başlık Gönder   Cevap Gönder    UGURTURAN Forum Ana Sayfası -> PHP Scriptler
Önceki başlık :: Sonraki başlık  
Yazar Mesaj
ugurturan
Newbie
Newbie


Kayıt: Aug 04, 2006
Mesajlar: 70

MesajTarih: Cum Mar 02, 2007 11:39 pm    Mesaj konusu: Sınırsız Kategoriler Ekle Güncelle ve Sil Alıntıyla Cevap Ver

Arkadaşalar, sınırsız kategori hakkında epey bir araştırma yaptım ve sonunda inşallah bişeyler Başardığıma inanıyorum. Ama birde gelin bana sorun. kıt kod bilgilerimle bunu Başarmak pek kolay olmadı. Sonuç olarak uykusuz uzun geceler,yorgun ve hasta beden ve oluşmuş bir sınırsız kategorileme scripti. Umarım beğenirsiniz.

Tabiiki bu scriptin oluşmasında hazır scriptlerden ve ceviz.net adresinden epeyce yararlandım. Yararlandığım kaynaklara emegi geçenlerden Allah razı olsun diyerek konumuza bağlıyorum.

Öncelikle Database tablomuzu oluşturuyoruz.

Kod:
--
-- Tablo yapısı: `s_kategoriler`
--

CREATE TABLE `s_kategoriler` (
  `kategori_id` int(11) NOT NULL auto_increment,
  `kategori_adi` varchar(255) default NULL,
  `altkategori_id` int(11) default NULL,
  PRIMARY KEY  (`kategori_id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin5 AUTO_INCREMENT=110 ;

--
-- Tablo döküm verisi `s_kategoriler`
--

INSERT INTO `s_kategoriler` VALUES (109, 'BB1', 108);
INSERT INTO `s_kategoriler` VALUES (102, 'A', 0);
INSERT INTO `s_kategoriler` VALUES (103, 'B', 0);
INSERT INTO `s_kategoriler` VALUES (104, 'C', 0);
INSERT INTO `s_kategoriler` VALUES (105, 'D', 0);
INSERT INTO `s_kategoriler` VALUES (106, 'A1', 102);
INSERT INTO `s_kategoriler` VALUES (107, 'AA1', 106);
INSERT INTO `s_kategoriler` VALUES (108, 'B1', 103);


Tablomuz üç alandan oluşuyor. kategori_id, kategori_adi, altkategori_id

Ben örnek olsun diye bir kaç kategori verisi oluşturdum. Sizlerde bunları çogaltabilir ve ya istediğinizi yapabilirsiniz.

Bu script denenmiştir. Sorunsuzca çalışmaktadır.
MYSQL 5 yukarısı kullanıyorum. Umarım MYSQL 4 lerde sorun vermez.

Şimdide sıra geldi bu tablomuza veri girme, güncelleme ve silme işlemine

Kod:

   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
   <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
   <head>
   <title>www.ugurturan.com</title>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
   <script language="JavaScript" type="text/javascript">
   
   //Ürünleri Silme işlemi
   var checkflag = "false";
   function sec(field)
   {
   if (checkflag == "false")
   {
   for (i = 0; i < field.length; i++)
   {
   field[i].checked = true;
   }
   checkflag = "true";
   return "Seçimi Kaldır";
   } else {
   for (i = 0; i < field.length; i++)
   {
   field[i].checked = false;
   }
   checkflag = "false";
   return "Tümünü Seç";
   }
   }

   <!--sıLMEK İstEdıgınızDE sızi UYARAN KODLAR-->
   function islemler(mesaj)
   {
   var total = 0;
   var max   = 0;
   max       = formbilgi.onaykutusu.length;
   
   for (var idx = 0; idx < max; idx++)
   {
   if (eval("document.formbilgi.onaykutusu[" + idx + "].checked") == true)
   {
     total += 1;
   }
   }
   if (total == 0)
   {
   alert("Hiç Seçim Yapmadınız");
   return false;
   } else {
   return confirm('Seçtişiniz ' + total + ' Veriyi Silmek İstiyormusunuz? Veri Tamamen Silinecek');
   }
   }
   <!-- SİLME İŞLEMLERİ BİTTİĞİ -->
   </script>
   
   </head>
   <body>
   
   <?php
   // www.ugurturan.com
   // uğur TURAN
   // info@ugurturan.com
   // ugurturan@msn.com
   
   // Bismillah diyerek işe bağlıyoruz. Çünkü her helal işin Başı bismillahtır.
   // Öncelikle nreden veri alacaksak o veri tabanını tanıtıyoruz.
   // Ben örnek olsun diye benim veritabanını girdim. Sizde kendinize ait olanı giriniz.
   
   @mysql_connect('localhost','root','123456');
   @mysql_select_db('zedatriko');
   
   
   //sınırsız Kategori Listeleme Fonksiyonudur.
   function kategorilerilistele($altkategori_id,$level) //completely expand category tree
   {   
   $q = mysql_query("SELECT kategori_id, kategori_adi, altkategori_id FROM s_kategoriler WHERE kategori_id<>0 and altkategori_id=$altkategori_id ORDER BY kategori_adi") or die (mysql_error());
   $a = array(); //altkategori_id'ler
   while ($row = mysql_fetch_row($q))
   {
   $row[5] = $level;
   $a[] = $row;
   //Altkategori işlemleri
   $b = kategorilerilistele($row[0],$level+1);
   //Ekle $b[] Sonuna $a[]
   for ($j=0; $j<count($b); $j++)
   {
   $a[] = $b[$j];
   }
   }
   return $a;
   
   } //kategorilerilistele
   
   
   //kategorileri Düzenli Şekilde Silmek
   function kategorivealtkategorilerisil($altkategori_id) //Kategorinin Tüm Alt Kategorilerini Siler kategori_id=$altkategori_id
   {
      //Alt Kategoriler
      $q = mysql_query("SELECT kategori_id FROM s_kategoriler WHERE altkategori_id=$altkategori_id and kategori_id<>0") or die (mysql_error());
      while ($row = mysql_fetch_row($q))
      {
         kategorivealtkategorilerisil($row[0]); //tekrarlı döngü
      }
      $q = mysql_query("DELETE FROM s_kategoriler WHERE altkategori_id=$altkategori_id and kategori_id<>0") or die (mysql_error());
      
      //Root Kategori ile birlikte Ürünlerdeki kategorileri de düzenler
      $q = mysql_query("UPDATE urunler SET kategori_id=0 WHERE kategori_id=$altkategori_id") or die (mysql_error());
   }
   
   
   @ $s_kategorilerislem      = strip_tags(trim($_GET['s_kategorilerislem']));
   
   if (!$s_kategorilerislem)
   {
   @ $ekle                  = intval($_GET['ekle']);
   if (empty($ekle))
   {   
   @ $kategori_id            = intval($_GET['kategori_id']);
   $altkategori_id            = '';
   
   if (empty($kategori_id)) {
   $bbaslik               = "ÜRÜN KATEGOrısı EKLE";
   $buton                  = "KAYDET";
   } else {
   $bbaslik               = "ÜRÜN KATEGOrısını DÜZENLE";
   $buton                  = "DEGİştır";
   
   //kategoriler DUZENLE
   $kategoriler_duzenleme_sql  = "SELECT * FROM s_kategoriler WHERE kategori_id='$kategori_id'";
   $kategoriler_duzenleme_sonuc= mysql_query($kategoriler_duzenleme_sql) or die ("Hata: kategoriler Görülemedi");
   $kategoriler_duzen_izin      = mysql_num_rows($kategoriler_duzenleme_sonuc);
   $kategoriler_ayrinti      = mysql_fetch_array($kategoriler_duzenleme_sonuc);
   $kategori_id            = $kategoriler_ayrinti["kategori_id"];
   $kategori_adi            = $kategoriler_ayrinti["kategori_adi"];
   $altkategori_id            = $kategoriler_ayrinti["altkategori_id"];
   
   if (!get_magic_quotes_gpc())
   {
   $kategori_adi               = stripslashes($kategori_adi);
   }
   mysql_free_result($kategoriler_duzenleme_sonuc);
   }
   
   ?>
   <table id=AutoNumber1 style="border-collapse: collapse" bordercolor="#111111" cellspacing="0" cellpadding="0" width="50%" border="0" align="center">   
   <tr>
   <td width="100%" align="center">
   <fieldset>
   <legend>&nbsp;<b>Kategori Ekleyin, Düzenleyin ve Silin</b>&nbsp;</legend>
   <table width="100%" align="center">   
   <form action="?sayfa=kategoriekle&ekle=1" method="post">
   <input type="hidden" name="kategori_id" value="<?php echo trim($kategori_id);?>" />
   <td width="50%" bgcolor=#f0f8ff align="center" class="baslik">Root Ana kategoridir. diğer kategorilere alt kategoriler eklemek için Root altındaki kategorilerden birisini seçip veri girişinden kategori yazıp kaydet demeniz yeterlidir.</td>
   </tr>
   <tr>
   <td width="50%" bgcolor=#f0f8ff align="center" class="altkategori">Kategori Listesi :
   <select name="altkategori_id">
   <option value="0">Root</option>
   <?php
   //kategorileri listele combobox
   $tmp = isset($_GET["w"]) ? $_GET["w"] : $_POST["altkategori_id"];
   $cats = kategorilerilistele(0,0);
   for ($i=0; $i<count($cats); $i++)
   {
   echo "<option value=\"".$cats[$i][0]."\"";
   if ($tmp == $cats[$i][0]) //select kategori
   echo " selected";
   echo ">";
   for ($j=0;$j<$cats[$i][5];$j++) echo "&nbsp;&nbsp;";
   echo $cats[$i][1];
   echo "</option>";
   }
   ?>
   </select>
   </td>
   </tr>
   <tr>
   <td width="50%" bgcolor=#f0f8ff align="center" class="altkategori">Veri girişi :
   <input size="40" name="kategori_adi" value="<?php echo $kategori_adi; ?>"></td>
   </tr>
   <tr>
   <td width="50%" bgcolor=#f0f8ff align="center" class="altkategori">
   <input type="submit" name="ekle" value="<?php echo $buton; ?>"></td>
   </tr>   
   </table>
   </fieldset>   
   </form>
   </table>
      
   <?php   
   unset($kategoriler_ayrinti);   
   
   } elseif ($ekle == 1) {   
   $kategori_id         = abs(intval($_POST['kategori_id']));
   $kategori_adi         = trim(strip_tags(htmlspecialchars($_POST['kategori_adi'])));
   
   if (!$kategori_adi)
   {
      echo '<script>alert("?İaretli Alanlar Zorunludur.");history.go(-1)</script>';
      exit;
   }

   if (!get_magic_quotes_gpc())
   {   
   $kategori_adi         = addslashes($kategori_adi);
   $altkategori_id         = addslashes($altkategori_id);   
   }
   if (empty($kategori_id))
   {   
   $q = mysql_query("INSERT INTO s_kategoriler (kategori_adi, altkategori_id) VALUES ('$kategori_adi', '$altkategori_id')") or die (mysql_error());
   $pid = mysql_insert_id();
   echo '<script>alert("Kategori Başarıyla Eklendi.");location.href=\'?sayfa=kategoriekle\';</script>';
      
   } else {
         
   $s_kategoriler_duzelt   = "UPDATE s_kategoriler SET kategori_adi = '$kategori_adi' WHERE kategori_id = $kategori_id";
   mysql_query($s_kategoriler_duzelt) or die (mysql_error());
   echo '<script>alert("Kategori Başarıyla Düzeltildi.");location.href=\'?sayfa=kategoriekle\';</script>';
   }   
   } else {
   echo '<script>alert("izin Yok");location.href=\'?sayfa=kategoriekle\';</script>';    
   }   
   /* ============================================== */
   /* KATEGOrı sıLME İşleMLErı                     */
   /* ============================================== */
   /* KATEGOrı İSLEMLErı */
   } elseif ($s_kategorilerislem == 1) {
   
   
   
   @ $kategorisil            = $_POST['kategorisil'];
   @ $formbilgi            = $_POST;
   
   if ($kategorisil)
   {
   //Fonksiyonu kullanarak kategori ve alt kategorileri siliyoruz.(deleteSubCategories)
   foreach ( $formbilgi as $anahtar=>$deger )
   {
   if ( gettype ($deger ) != "array" )
   {
   if ($anahtar == "kategori_$deger")
   {
      $kategorileri_sil      = mysql_query("DELETE FROM s_kategoriler WHERE kategori_id=$deger");
      //Kategori siliniyor ve buna bağlı alt kategoriler varsa onlarda siliniyor.
      kategorivealtkategorilerisil($deger);
   
   }
   }
   }
   
   echo '<script>alert("Kategori veya kategoriler Başarıyla silindi.");location.href=\'?sayfa=kategoriekle\';</script>';   
   }
   }
   ?>
   <table id=AutoNumber1 style="border-collapse: collapse" bordercolor="#111111" cellspacing="0" cellpadding="0" width="50%" border="0" align="center">
   <tbody>
   <tr>
   <td width="100%">
   <fieldset>
   <legend>&nbsp;<b><?php echo $dil['kategoriguncellesil']; ?></b>&nbsp;</legend>
   <table width="100%" align="center">   
   <form action="?sayfa=kategoriekle&s_kategorilerislem=1" method="post" name="formbilgi">
   <input type="hidden" name="kategori_id" value="<?php echo trim($kategori_id);?>" />
   <?php
   $toplam                = mysql_query("SELECT COUNT(*) FROM s_kategoriler");
   list($toplam_kategoriler)   = mysql_fetch_row($toplam);
   mysql_free_result($toplam);
   
   echo '
   <tr>
   <td width=100% colspan="8" align="center" bgcolor="#f0f8ff">
   </td>
   </tr>
   <tr>
   <td width=100% colspan="6" align="left" bgcolor="#f0f8ff">';       
   echo '&nbsp;&nbsp;<font color="#FF0000">&nbsp;&nbsp;Seçilileri : </font>
   <input type="submit" value="Sil" name="kategorisil" onclick="return islemler(\'Silinecek Eminmisin\')">&nbsp;&nbsp;Toplam Kategori ve Alt Kategori sayısı : <b>'.$toplam_kategoriler.'</b>
   <tr bgColor="#4faafa">
   <td width="5%" align="left">
   <input type="checkbox" onclick="this.value=sec(this.form.onaykutusu)"></td>
   <td width="90%" align="left"><b>Kategori Adı</b></td>
   </tr>';
   #Kategorileri Listele
   Listele(0,"");
   # Özyinelemeli listele fonksiyonu
   # ----------------------------------------------------------------------------------------
   function Listele($kategori_id,$derinlik){
   # Sorgu cümlesi
   $cumle = "select *, find_in_set(".$kategori_id.",altkategori_id) as seviye from s_kategoriler having seviye = 1";
   $sorgu = mysql_query($cumle);   
   
   # Kayıtları bas
   while($sonuc            = mysql_fetch_array($sorgu)){   
   $kategori_adi            = $sonuc["kategori_adi"];
   $kategori_id            = $sonuc["kategori_id"];
      
   # Kategorı bilgilerini bas, Alt kategorileri (varsa) bas   
   echo '
   <tr bgColor="#cae3f9">
   <td width="10%" align="left"><input type="checkbox" id="onaykutusu" name="kategori_'.$kategori_id.'" value="'.$kategori_id.'" class="onaykutusu"></td>         
   <td width="20%" align="left">'.$derinlik.'<a href="?sayfa=kategoriekle&kategori_id='.$kategori_id.'">'.$kategori_adi.'</td>   
   </tr>';
   Listele($kategori_id,$derinlik."&nbsp;&nbsp;&nbsp;&nbsp;");
   }
   return;
   }
   echo '
   <tr>
   <td colspan="3" width="100%" bgcolor="#f0f8ff" align="left">
   &nbsp;&nbsp;<font color="#FF0000">&nbsp;&nbsp;Seçilileri : </font>
   <input type="submit" value="Sil" name="kategorisil" onclick="return islemler(\'Silinecek Eminmisin\')"></td>
   </tr>';   
   ?>
   </form>
   </table>
   </fieldset>
   </td>
   </tbody>
   </tr>
   </table>
   </body>
   </html>


Listeli olan kategorilerden herhangi birisini tıkladıgınızda veri girişinde o kategorinin adı görünecektir. Oradan kategorinin adını güncelleyebilirsiniz.


Konuyla ilgili bilgilerinizi benimle paylaşabilirsiniz.

ıuanda Her kategorinin yanında kaç ürün var ve herhangi bir kategoriyi sildigimde buna bağlı ürünlerinde silinmesini üzerinde çalışıyorum.
Başa dön
Kullanıcı profilini gör Özel mesaj gönder E-mail'i gönder Kullanıcının web sitesini ziyaret et
yavuzkurdu
Newbie
Newbie


Kayıt: Jun 27, 2007
Mesajlar: 1

MesajTarih: Çrş Hzr 27, 2007 10:30 pm    Mesaj konusu: teşekkür Alıntıyla Cevap Ver

checkbox ile yapmış olduğunuz kategori düzenlemesi harika olmuş, ellerinize Sağlık, tabi ki beyninize de. çok istifade ettim. Alt kategori de olsa süper olacaktı. Çok teşekkür ederim, paylaşımınız için.
Başa dön
Kullanıcı profilini gör Özel mesaj gönder
ugurturan
Newbie
Newbie


Kayıt: Aug 04, 2006
Mesajlar: 70

MesajTarih: Cum Hzr 29, 2007 6:00 pm    Mesaj konusu: Alıntıyla Cevap Ver

Sagol kardeşim. Yanlız zaten alt kategori olayıda var. Bu script bu iskelet üzerine inşaa edilmiştir.
Başa dön
Kullanıcı profilini gör Özel mesaj gönder E-mail'i gönder Kullanıcının web sitesini ziyaret et
acemihp
Newbie
Newbie


Kayıt: Aug 03, 2007
Mesajlar: 6

MesajTarih: Cum Ağu 03, 2007 2:00 am    Mesaj konusu: Alıntıyla Cevap Ver

guzel bir makale olmus tebrik ederim yalniz bir sorun var bu konuda yardimci olursaniz cok makbule gecer kategorileme islemlerini silmek isteyince sorgu gerceklesmiyor yani silmiyor birde bu kategorilere makale eklemek istersek bunu nasil yapabiliriz cevap verirseniz cok cok memnun kalicam tekrar tesekurler
Başa dön
Kullanıcı profilini gör Özel mesaj gönder
ugurturan
Newbie
Newbie


Kayıt: Aug 04, 2006
Mesajlar: 70

MesajTarih: Cum Ağu 03, 2007 11:17 pm    Mesaj konusu: Alıntıyla Cevap Ver

Yanlışın var kardeşim. Silme işleminide yapıyor. Denenerek buraya aktarılmıştır. Başkası tarafından da denenmiştir.

Makale ekleme olayına gelince, mesela bir ürün ekleme paketin olsun.
Bu ürünleri MYSQL veritabanımıza urunekle.php diye bir dosya yoluyla ekledin. Burada yapmamız geken şey, MYSQL de urunler.db içine yine kategori_id youlunu vererek böylelikle ürünlerin hangi kategoriye bağlı oldugunu bildiriyoruz. Tabiiki öncelikle kategoriler oluşturulmalı. Sonra da urunekle.php içinde de select içinde kategoriler sıralı olarak çagrılmalıdır. Bununla ilgili olarakta yine [url]www.pehepe.org [/url] sitesinde site yönetici arkadaşım da verilere bir kaç şey ekleyerek urunekleme olayını kategoriye göre programladı. Ben Şimdi o verileride burada sunuyorum. Umarım işini görür.

Ben zaten şuanda urunekleme olayları, sınırsız kategorilerle birlikte harmanlayarak bir ürün satış sitesi yaptım. Az kaldı bitmesine. Bitincede sizlerle bu bilgilerimi paylaşacagım inş. Bilgiyi kovala kardeşim. yılmadan devam et. Deme bu bilgiler nerede işime yarayacak. Yeri gelir bir işe yarar ve sende şaşarsın ben neler yapmışım. iyikide yapmışim dersin.
Başa dön
Kullanıcı profilini gör Özel mesaj gönder E-mail'i gönder Kullanıcının web sitesini ziyaret et
ugurturan
Newbie
Newbie


Kayıt: Aug 04, 2006
Mesajlar: 70

MesajTarih: Cum Ağu 03, 2007 11:59 pm    Mesaj konusu: Alıntıyla Cevap Ver

Öncelikle veritabanımıza oluşturdugumuz tablolarını giriyoruz. aşağıda belirtilenleri giriniz.

Ben sinirsiz_kategori adında bir tablo adı yazdım. Sizde bozmadan bu Şekilde devam ediniz. işi kavrayınca kafanıza göre takılırsınız inş. Smile

sinirsiz_kategori ler adı altında bu verileri giriniz.

CREATE TABLE `kategoriler` (
`kategori_id` int(11) NOT NULL auto_increment,
`kategori_adi` varchar(255) default NULL,
`altkategori_id` int(11) default NULL,
PRIMARY KEY (`kategori_id`),
KEY `altkategori_id` (`altkategori_id`)
) ENGINE=MyISAM AUTO_INCREMENT=10 ;

--
-- Tablo döküm verisi `kategoriler`
--

INSERT INTO `kategoriler` (`kategori_id`, `kategori_adi`, `altkategori_id`) VALUES
(1, 'A1', 0),
(2, 'A2', 0),
(3, 'A1 B1', 1),
(4, 'A1 B2', 1),
(5, 'A2 B1', 2),
(6, 'A2 B2', 2),
(7, 'A2 B3', 2),
(8, 'A2 B3 C1', 7),
(9, 'A2 B3 C2', 7);

-- --------------------------------------------------------

--
-- Tablo yapısı: `urunler`
--

CREATE TABLE `urunler` (
`urun_id` int(7) NOT NULL auto_increment,
`kategori_id` int(10) NOT NULL default '0',
`urun_adi` varchar(100) NOT NULL,
PRIMARY KEY (`urun_id`)
) ENGINE=MyISAM AUTO_INCREMENT=2 ;

--
-- Tablo döküm verisi `urunler`
--

INSERT INTO `urunler` (`urun_id`, `kategori_id`, `urun_adi`) VALUES
(1, 9, 'A2 B3 C2 Ürünü');

C:\AppServ\www ---> klasörümüzün içine SINIRSIZ_KATEGORI adında bir klasör oluşturun.

Ardından bu klasör içinde mysql_baglanti.php dosyası oluşturup aşağıdaki verileri kaydedin.

Kod:
<?php
@mysql_connect('localhost','root','123456');
@mysql_select_db('sinirsiz_kategori'); //
ı>


Yine ardından aynı klasör içinde kategoriler.php dosyası oluşturun ve aşağıdaki verileri kategoriler.php içine kaydedin.



Kod:
<?php
require_once('mysql_baglanti.php'); //Veritabani Baglanti Dosyasi
require_once('kategori_fonksiyon.php');//Fonksiyon Dosyasi
//PROGRAMLAYAN
// Bismillah diyerek işe bağlıyoruz. Çünkü her helal işin Başı bismillahtır.
// www.ugurturan.com
// uğur TURAN
// info@ugurturan.com
// ugurturan@msn.com

//DUZENLEME
//Sebahattin Arslan www.pehepe.org - www.arslandizayn.com
ı>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head>
<title>SINIRSIZ KATEGORILEME</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
</head>
<body>
<?php
$kategoriid   = 0;
$kategoriadi  = '';
$buton        = 'KAYDET';
$hata_mesaj   = '';
@ $islem      = intval($_GET['islem']);
@$kategoriid  = abs(intval($_REQUEST['kategoriid']));

//=================================================================================================
if ($islem == 1) {  // KATEGORI EKLEME/DUZENLEME BASLANGICI |||||||||||||||||||||||||||||||||||||||
//=================================================================================================
$kategoriadi = trim(strip_tags(htmlspecialchars($_POST['kategoriadi'])));
@ $kategoriid  = intval($_POST['kategoriid']);
@ $kategori_id = intval($_POST['kategori_id']);
if (!$kategoriadi)
{
  $hata_mesaj = '<font color="#ff0000">Kategori Adını Boş biraktınız</font>';
} else {
  if (!get_magic_quotes_gpc())
  {   
    $kategoriadi         = addslashes($kategoriadi); 
  }
  if (empty($kategoriid))
  {   
    mysql_query("INSERT INTO kategoriler (kategori_adi, altkategori_id) VALUES ('$kategoriadi', '$kategori_id')") or die (mysql_error());
    $pid = mysql_insert_id();
    $hata_mesaj = '<font color="#008000">Kategori Ekleme İşlemi Tamamlandı</font>';
  } else {
    mysql_query("UPDATE kategoriler SET kategori_adi='$kategoriadi' WHERE kategori_id=$kategoriid") or die (mysql_error());
    $hata_mesaj = '<font color="008000">Kategori Düzenleme İşlemi Tamamlandı</font>';
  }
   $kategoriid = 0;
   $kategoriadi = '';
}
//=================================================================================================
// KATEGORI EKLEME/DUZENLEME SONU    ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} elseif ($islem==2) {//===========================================================================
// KATEGORI SILME BASLANGICI ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
$kategoriid = $_GET['kategoriid'];
$kategorisil_dizi = array();
$kategorisil_dizi = kategoriIdListe($kategoriid);
$kategorisil_dizi[] = $kategoriid;

$kategori_sil = mysql_query("DELETE FROM kategoriler WHERE kategori_id IN (".implode(',',$kategorisil_dizi).")");
$urun_sil     = mysql_query("DELETE FROM urunler WHERE kategori_id IN (".implode(',',$kategorisil_dizi).")");
if ($kategori_sil && $urun_sil)
$hata_mesaj = '<font color="#008000">Silme İşlemi Tamamlandı</font>';
else
$hata_mesaj = '<font color="#ff0000">Silme İşlemi Başarısız</font>';
$kategoriid = 0;
$kategoriadi = '';
//=================================================================================================
// KATEGORI SILME SONU  |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} elseif ($islem==3) { ////////////////////////////////////////////////////////////////////////////
// KATEGORI DUZENLEME |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
if ($kategoriid>0)
{
  if (!$kategori_bilgi = kategoriBilgi($kategoriid))
   $hata_mesaj = '<font color="#ff0000">İşlem Başarısız</font>';
   
   $kategoriadi    = $kategori_bilgi['kategoriadi'];
  $buton          = 'DÜZENLE';
}
}
//=================================================================================================
// KATEGORILER SECIM KUTUSU BASLANGICI ////////////////////////////////////////////////////////////
//=================================================================================================
if ($hata_mesaj)
{
  echo '<table width="600" align="center"><tr><td align="center">'.$hata_mesaj.'</td></tr></table>';
}
ı>
<table cellspacing="0" cellpadding="0" width="600" border="0" align="center">   
  <tr>
    <td width="100%" align="center">
      <fieldset>
      <legend>&nbsp;<b>Kategori Ekle, Düzenle</b>&nbsp;</legend>
      <table width="100%" align="center">   
        <form action="?islem=1&" method="post">
            <?php
            if ($kategoriid>0 && $islem==3)
            {
            echo '<input type="hidden" name="kategoriid" value="'.$kategoriid.'">';
            } else {
            ?>
           <tr>
          <td width="50%" bgcolor="#f0f8ff" align="center" class="baslik">Ana Kategori Eklemek İçin ROOT Olarak Seçim Yaptıktan Sonra İsmi Giriniz.<br />Altkategoriler İçin ROOT dışında Bir Kategori Seçip İsmi Giriniz</td>
        </tr>
        <tr>
          <td width="50%" bgcolor="#f0f8ff" align="center" class="altkategori">
               <b>Kategori Listesi :</b>
          <select name="kategori_id">
          <option value="0">--- ROOT ---</option>
          <?php
          //kategorileri listele
          $kategoriid = intval($_REQUEST['kategoriid']);
          $kategoriler_dizi = kategoriListe(0,0);
          for ($i=0; $i<count($kategoriler_dizi); $i++)
          {
            echo '<option value="'.$kategoriler_dizi[$i][0].'"';
            if ($kategoriid == $kategoriler_dizi[$i][0]) //select kategori
            echo ' selected="selected"';
            echo '>';
            for ($j=0;$j<$kategoriler_dizi[$i][2];$j++) echo '&nbsp;&nbsp;'; //Alt Kategorileri Iceri Kaydirma Bosluklari
            echo $kategoriler_dizi[$i][1];
            echo '</option>';
          }
               unset($kategoriler_dizi);
          ?>
          </select>
               <?php
               }
               ?>
          </td>
        </tr>
        <tr>
          <td width="50%" bgcolor="#f0f8ff" align="center" class="altkategori">?sim : <input size="40" name="kategoriadi" value="<?php echo $kategoriadi; ?>"></td>
        </tr>
        <tr>
          <td width="50%" bgcolor="#f0f8ff" align="center" class="altkategori"> <input type="submit" name="ekle" value="<?php echo $buton; ?>">
               <br />
               <a href="?">Yeni Kategori Ekle</a></td>
        </tr>   
       </form>
         </table>
         </fieldset>
      </td>
   </tr>
</table>
<?php
//=================================================================================================
// KATEGORILER SECIM KUTUSU SONU ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================

//=================================================================================================
// KATEGORI LISTE BASLANGICI     ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
ı>
<table cellspacing="0" cellpadding="0" width="600" border="0" align="center">
  <tr>
    <td width="100%">
      <fieldset>
      <legend>&nbsp;<b>Kategori Listesi</b>&nbsp;</legend>
      <table width="100%" align="center" cellpadding="1" cellspacing="1">   
        <form action="?" method="post" name="formbilgi">
        <?php
        $toplam_kategori_sql  = mysql_query("SELECT COUNT(*) FROM kategoriler");
        list($toplam_kategori)   = mysql_fetch_row($toplam_kategori_sql);
        mysql_free_result($toplam_kategori_sql);
        ?>
        <tr>
          <td width=100% colspan="2" align="left" bgcolor="#f0f8ff">&nbsp;&nbsp;Toplam Kategori ve Alt Kategori sayısı : <b><?php echo $toplam_kategori; ?></b></td>
        </tr>
            <tr>
          <td width="10%" align="center"><b>Sil</b></td>
          <td width="90%" align="left">&nbsp;&nbsp;&nbsp;&nbsp;<b>Kategori Adı</b></td>
        </tr>
        <?php
            $kategorilistedizi = kategoriListe(0,0);
        for ($i=0; $i<count($kategorilistedizi); $i++)
        {
          echo '
          <tr bgcolor="#cae3f9">
            <td width="10%" align="center"><a href="javascript:if(confirm(\'Kategoriyi Silmek İstiyor musunuz?\nSilinecek Kategori ID : '.$kategorilistedizi[$i][0].'\'))location.href=\'?islem=2&kategoriid='.$kategorilistedizi[$i][0].'\'">Sil</a></td>     
            <td width="20%" align="left" style="padding-left:4px">';
            for ($j=0;$j<$kategorilistedizi[$i][2];$j++) echo '&nbsp;&nbsp;'; //Kategori Girinti
            echo '<a href="?islem=3&kategoriid='.$kategorilistedizi[$i][0].'">'.$kategorilistedizi[$i][1].'</td>
          </tr>';
        }
            unset($kategorilistedizi);
        ?>
        </form>
      </table>
        </fieldset>
      </td>
   </tr>
</table>
<?php
//=================================================================================================
// KATEGORI LISTE SONU    |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
ı>
<div align="center"><a href="urunler.php">Ürünler Sayfası</a></div>
</body>
</html>


Ardından yine aynı klasör içinde kategori_fonksiyon.php adında bir dosya oluşturun ve aşağıdaki bilgileri bu dosya içine kaydedin.

Kod:
<?php
//=================================================================================================
// FONKSIYONLAR BASLANGICI ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
//Kategori ID sine Gore Kategori Bilgilerini Verir
function kategoriBilgi($kategoriid)
{
  $kategori_dizi = array();
  $kategori_sql= mysql_query("SELECT kategori_id,kategori_adi,altkategori_id FROM kategoriler WHERE kategori_id=$kategoriid") or die ("Hata: ".mysql_error());
  if (mysql_num_rows($kategori_sql)>0)
  {
    $kategori_veri = mysql_fetch_array($kategori_sql);
    $kategori_dizi = array('kategoriadi'=>$kategori_veri["kategori_adi"],'altkategoriid'=>$kategori_veri['altkategori_id']);
    return $kategori_dizi;
   } else {
     return false;
   }
}

function kategoriListe($kategoriid,$level) //completely expand category tree
{
   $q = mysql_query("SELECT kategori_id,kategori_adi FROM kategoriler WHERE kategori_id<>0 and altkategori_id=$kategoriid ORDER BY kategori_adi") or die (mysql_error());
   $a = array();
   while ($row = mysql_fetch_row($q))
   {
      $row[2] = $level;
      
      $a[] = $row; //Ana Kategori Dizisi
      //Alt Kategoriler
      $b = kategoriListe($row[0],$level+1);
    //Alt Kategoriler Ana Kategori Dizisine Ekleniyor
      for ($j=0; $j<count($b); $j++)
      {
         $a[] = $b[$j];
      }
   }
   return $a;
}
 
function kategoriIdListe($kategoriid)
{
$sorgu = mysql_query("SELECT kategori_id, FIND_IN_SET(".$kategoriid.",altkategori_id) AS seviye FROM kategoriler HAVING seviye=1");   
$kategoriid_dizi = array();

while($sonuc = mysql_fetch_array($sorgu))
{   
  $kategori_id       = $sonuc["kategori_id"];
  $kategoriid_dizi[] = $kategori_id;
  $b = kategoriIdListe($kategori_id);
   for ($j=0; $j<count($b); $j++)
  {
    $kategoriid_dizi[] = $b[$j];
  }
}
return $kategoriid_dizi;
}
//=================================================================================================
// FONKSIYONLAR SONU ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
ı>


En son olarakta yine aynı klasör içinde urunler.php adında bir dosya oluşturun ve aşağıdaki bilgileri bu urunler.php içine kaydedin.

Kod:
<?php
require_once('mysql_baglanti.php'); //Veritabani Baglanti Dosyasi
require_once('kategori_fonksiyon.php');//Fonksiyon Dosyasi
//PROGRAMLAYAN
// Bismillah diyerek işe başlıyoruz. Çünkü her helal işin Başı bismillahtır.
// www.ugurturan.com
// uğur TURAN
// info@ugurturan.com
// ugurturan@msn.com

//DUZENLEME
//Sebahattin Arslan www.pehepe.org - www.arslandizayn.com
ı>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head>
<title>SINIRSIZ KATEGORILEME</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9" />
</head>
<body>
<?php
$urunid       = 0;
$kategoriid   = 0;
$urunadi      = '';
$buton        = 'KAYDET';
$hata_mesaj   = '';
@ $islem      = intval($_GET['islem']);
@$kategoriid  = abs(intval($_REQUEST['kategoriid']));
@$urunid      = abs(intval($_REQUEST['urunid']));
//=================================================================================================
if ($islem == 1) {  // URUN EKLEME/DUZENLEME BASLANGICI |||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
$urunadi = trim(strip_tags(htmlspecialchars($_POST['urunadi'])));
@ $urunid  = intval($_POST['urunid']);
@ $kategoriid = intval($_POST['kategoriid']);

if (!$urunadi)
{
  $hata_mesaj = '<font color="#ff0000">Ürün Adını Boş biraktınız</font>';
} elseif (!$kategoriid) {
  $hata_mesaj = '<font color="#ff0000">Kategori Seçmediniz</font>';
} else {
  if (!get_magic_quotes_gpc())
  {   
    $urunadi         = addslashes($urunadi); 
  }
   
  if (empty($urunid))
  {
     $urun_adi_kontrol = mysql_query("SELECT urun_id FROM urunler WHERE urun_adi='$urunadi'");
      if (mysql_num_rows($urun_adi_kontrol)>0)
      {
        $hata_mesaj = ' <font color="#ff0000">Bu Ürün Adıyla Daha Önceden Kayıt yapılmış</font>';
      } else {
      mysql_query("INSERT INTO urunler (kategori_id, urun_adi) VALUES ('$kategoriid', '$urunadi')") or die (mysql_error());
      $hata_mesaj = '<font color="#008000">Ürün Ekleme İşlemi Tamamlandı</font>';
      }
      mysql_free_result($urun_adi_kontrol);
  } else {
     $urun_adi_kontrol = mysql_query("SELECT urun_id FROM urunler WHERE urun_id<>$urunid AND urun_adi='$urunadi'");
      if (mysql_num_rows($urun_adi_kontrol)>0)
      {
        $hata_mesaj = ' <font color="#ff0000">Bu Ürün Adıyla Daha Önceden Kayıt yapılmış</font>';
    } else {
        mysql_query("UPDATE urunler SET kategori_id=$kategoriid,urun_adi='$urunadi' WHERE urun_id=$urunid") or die (mysql_error());
      $hata_mesaj = '<font color="008000">Ürün Düzenleme İşlemi Tamamlandı</font>';
      }
      mysql_free_result($urun_adi_kontrol);
  }
   $kategoriid = 0;
   $urunid     = 0;
   $urunadi    = '';
}
//=================================================================================================
// URUN EKLEME/DUZENLEME SONU    ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} elseif ($islem==2) {//===========================================================================
// KATEGORI SILME BASLANGICI ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
$urunid = $_GET['urunid'];
$urun_sil     = mysql_query("DELETE FROM urunler WHERE urun_id=$urunid");
if ($urun_sil)
$hata_mesaj = '<font color="#008000">Silme İşlemi Tamamlandı</font>';
else
$hata_mesaj = '<font color="#ff0000">Silme İşlemi Başarısız</font>';
$urunid     = 0;
$kategoriid = 0;
$urunadi    = '';
//=================================================================================================
// KATEGORI SILME SONU  |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
} elseif ($islem==3) { ////////////////////////////////////////////////////////////////////////////
// KATEGORI DUZENLEME BILGI BASLANGICI ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
$urunid = intval($_GET['urunid']);
if ($urunid>0)
{
  $urun_sql = mysql_query("SELECT kategori_id,urun_adi FROM urunler WHERE urun_id=$urunid");
   if (mysql_num_rows($urun_sql)>0)
   {
     $urun_veri = mysql_fetch_array($urun_sql);
      $kategoriid = $urun_veri['kategori_id'];
      $urunadi   = $urun_veri['urun_adi'];
    $buton          = 'DÜZENLE';
   } else {
      $hata_mesaj = '<font color="#ff0000">Ürün Bulunamadı</font>';
  }
}
//=================================================================================================
}// KATEGORI DUZENLEME BILGI SONU |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
// KATEGORILER SECIM KUTUSU BASLANGICI ////////////////////////////////////////////////////////////
//=================================================================================================
if ($hata_mesaj)
{
  echo '<table width="600" align="center"><tr><td align="center">'.$hata_mesaj.'</td></tr></table>';
}
ı>
<table cellspacing="0" cellpadding="0" width="600" border="0" align="center">   
  <tr>
    <td width="100%" align="center">
      <fieldset>
      <legend>&nbsp;<b>Ürün Ekle, Düzenle</b>&nbsp;</legend>
      <table width="100%" align="center">   
        <form action="?islem=1" method="post">
            <?php
            if ($urunid>0 && $islem==3)
            {
              echo '<input type="hidden" name="urunid" value="'.$urunid.'">';
            } else {
              $urunid = 0;
               $urunadi = '';
            }
            ?>
           <tr>
          <td width="50%" bgcolor="#f0f8ff" align="center" class="baslik">Ürün Eklemek İçin Bir Kategori Seçiniz</td>
        </tr>
        <tr>
          <td width="50%" bgcolor="#f0f8ff" align="center" class="altkategori">
               <b>Kategori Listesi :</b>
          <select name="kategoriid">
          <option value="0">--- Bütün Kategoriler ---</option>
          <?php
          //kategorileri listele
          $kategoriid = intval($_REQUEST['kategoriid']);
          $kategoriler_dizi = kategoriListe(0,0);
          for ($i=0; $i<count($kategoriler_dizi); $i++)
          {
            echo '<option value="'.$kategoriler_dizi[$i][0].'"';
            if ($kategoriid == $kategoriler_dizi[$i][0]) //select kategori
            echo ' selected="selected"';
            echo '>';
            for ($j=0;$j<$kategoriler_dizi[$i][2];$j++) echo '&nbsp;&nbsp;'; //Alt Kategorileri Iceri Kaydirma Bosluklari
            echo $kategoriler_dizi[$i][1];
            echo '</option>';
          }
               unset($kategoriler_dizi);
          ?>
          </select>
          </td>
        </tr>
        <tr>
          <td width="50%" bgcolor="#f0f8ff" align="center" class="altkategori">Ürün Adı : <input size="40" name="urunadi" value="<?php echo $urunadi; ?>"></td>
        </tr>
        <tr>
          <td width="50%" bgcolor="#f0f8ff" align="center" class="altkategori"> <input type="submit" name="ekle" value="<?php echo $buton; ?>">
               <br />
               <a href="?">Yeni Ürün Ekle</a></td>
        </tr>   
       </form>
         </table>
         </fieldset>
      </td>
   </tr>
</table>
<?php
//=================================================================================================
// KATEGORILER SECIM KUTUSU SONU ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================

//=================================================================================================
// KATEGORI LISTE BASLANGICI     ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
ı>
<table cellspacing="0" cellpadding="0" width="600" border="0" align="center">
  <tr>
    <td width="100%">
      <fieldset>
      <legend>&nbsp;<b>Ürün Listesi</b>&nbsp;</legend>
      <table width="100%" align="center" cellpadding="1" cellspacing="1">   
        <form action="?" method="post" name="formbilgi">
        <?php
        $urun_liste = mysql_query("SELECT kategori_id,urun_adi FROM urunler ORDER BY urun_adi");
        $toplam_urun_sayisi = mysql_num_rows($urun_liste);
        ?>
        <tr>
          <td width=100% colspan="3" align="left" bgcolor="#f0f8ff">&nbsp;&nbsp;Toplam Ürün sayısı : <b><?php echo $toplam_urun_sayisi; ?></b></td>
        </tr>
            <tr>
          <td width="10%" align="center"><b>Sil</b></td>
               <td width="20%" align="center"><b>Kategori</b></td>
          <td width="70%" align="left">&nbsp;&nbsp;&nbsp;&nbsp;<b>Kategori Adı</b></td>
        </tr>
        <?php
            $urun_liste = mysql_query("SELECT k.kategori_id,k.kategori_adi,u.urun_id,u.urun_adi FROM urunler AS u,kategoriler AS k WHERE k.kategori_id=u.kategori_id ORDER BY u.urun_adi");
        if ($toplam_urun_sayisi>0)
            {
            while ($urunveri = mysql_fetch_array($urun_liste))
        {
              $urunid      = $urunveri['urun_id'];
               $urunadi     = $urunveri['urun_adi'];
               $kategoriid  = $urunveri['kategori_id'];
               $kategoriadi = $urunveri['kategori_adi'];
          echo '
          <tr bgcolor="#cae3f9">
            <td width="10%" align="center"><a href="javascript:if(confirm(\'Ürünü Silmek İstiyor musunuz?\nSilinecek Ürün ID : '.$urunid.'\'))location.href=\'?islem=2&urunid='.$urunid.'\'"">Sil</a></td>     
            <td width="20%" align="left">'.$kategoriadi.'</td>
                  <td width="70%" align="left" style="padding-left:4px"><a href="?islem=3&urunid='.$urunid.'&kategoriid='.$kategoriid.'">'.$urunadi.'</a></td>
          </tr>';
        }
            } else {
              echo '<tr><td width="100%" align="center" colspan="3">Kayıtlı Ürün Yok</td></tr>';
            }
        mysql_free_result($urun_liste);
            unset($urun_liste);
        ?>
        </form>
      </table>
        </fieldset>
      </td>
   </tr>
</table>
<?php
//=================================================================================================
// KATEGORI LISTE SONU    |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================================================================================================
ı>
<div align="center"><a href="kategoriler.php">Kategoriler Sayfası</a></div>
</body>
</html>


Ardından http://localhost/SINIRSIZ_KATEGORI/kategoriler.php linkini browser'e yazarak çalıştırıyoruz. Burada sizde göreceksiniz eger sorunsuz denilenleri yaptıysanız. Kategori ekle ve düzenle sayfası karşımıza çıkacaktır. Yeni kategori oluşturmak istediğimizde Kategori Listesi : yazan yerin altındaki isim : kısmına kategori adı yazınız. Mesela A yazın. Sonra kaydedin. Ardından yeni bir kategori adı yazın ama bukez root kısmından A olan kategoriyi seçerek altına yeni kategori adını AA yazın. Sizde göreceksinizki A kategorisine yeni bir alt kategori eklenmiş oldu. Bunu bu Şekilde sınırsızca devam ettirebilirsiniz.

Şimdi diyelimki A anakategorisini siildiğimizde ise bu anakategoriye bağlı altkategorilerde otomatik olarak siliniyor. Bu kategorilere bağlı olan ürünlerde siliniyor. Yani tam olarak düzenli ve güzel bir döngümüz olmuş oluyor. En altta Ürünler Sayfası linkini tıkladığınızda ise yeni ürünler ekleme olaylarını gerçekleştirecegimiz sayfa karşımıza çıkar. Burada kategorileri listele yazan yerin hemen altına bir ürün adı girin ve kaydedin. Sizde göreceksinizki herhangi bir kategoriye ekli olmadan ürün eklenecektir. Ama bir Başka ürün adı girin ve Kategori Listesi : yazan yerden herhangi bir girilmiş olan kategori adını seçin ve kaydet deyin. Göreceksinizki ürün eklenmiş ve ürün hangi kategoriye ait ise bize belirtilmiş olacak. Yani ürünümüz artık bir kategoriye ait. Hemde bizim seçtişimiz kategoriye Smile

Tabiiki ben bunu diger scriplerden de yararlanarak ve oralardan hatta aslandizayn (Sebahattin Arslan) kardeşimden de çok faydalandım. Bu kategoriyi en sade hale getirip derledim. Ardından da bu ufak scrip ortaya çıktı ve en son buhalede Sebahattin Arslan kardeşim getirdi. Kendisine, bana vermiş oldugu bilgi ve desteginden dolayı önce HZ. Allah'a ve ardından da onun yaratmış olduğu sevgili kulu Sebahattin Arslan kardeşimede çok teşekkür ediyorum.
Başa dön
Kullanıcı profilini gör Özel mesaj gönder E-mail'i gönder Kullanıcının web sitesini ziyaret et
acemihp
Newbie
Newbie


Kayıt: Aug 03, 2007
Mesajlar: 6

MesajTarih: Cmt Ağu 04, 2007 3:26 pm    Mesaj konusu: Alıntıyla Cevap Ver

cok cok tesekur ederim ugur kardesim eline saglik o kadar aciklayici olmuski inan cook isime yaradi ama silme islemi sanirim benden kaynaklaniyor hakliymissiniz deneyip tekrar yorumlari aktaracam simdilik hoscakal ve tekrar tesekurler
Başa dön
Kullanıcı profilini gör Özel mesaj gönder
acemihp
Newbie
Newbie


Kayıt: Aug 03, 2007
Mesajlar: 6

MesajTarih: Sal Ağu 07, 2007 12:43 am    Mesaj konusu: Alıntıyla Cevap Ver

ugur kardesim kodlar cok isimi kolaylastiracak bu sekilde harika calisacak son bir eklenti yapmak istiyorum ama yapamiyorum yardimlarini esirgemezssen cok memnun kalicam yapmak istegim vermis oldugun kategori ve urun basliklarina resim eklemek ayricada makalae metni eklemek soyle bir sekilde caps cektim belki daha iyi anlatabilirim

Image
Başa dön
Kullanıcı profilini gör Özel mesaj gönder
ugurturan
Newbie
Newbie


Kayıt: Aug 04, 2006
Mesajlar: 70

MesajTarih: Sal Ağu 07, 2007 11:48 pm    Mesaj konusu: Alıntıyla Cevap Ver

pehepe 4 üyelik sisteminde üyelere resim ekleme olayı var. Buradan da yararlanabilirsin.

http://www.pehepe.org

Sitesinden bununla ilgili bir üyelik sistemi var. Ama en son sürümü değilde bir önceki sürümünü indir ve ondaki resim ekleme olayını buna monte et. Bana 2 gün kadar süre ve eğer yapamazsan ozaman inş. ben sana yardımcı olacağım inş. Elimden geleni yapacağım.

Bu arada sen bu çalışmayı ne için kullanacaksını Nerelisin ve neredesinı Smile

Ben İstanbul İli Ümraniye İlçesi Yeni çamlıca Mahallesinde ikamet etmekteyim. yağ 30 ve lise meeeeeeeeeezunuyum. Koyun gibi okutulduk da ondan hala etkisindeyim. çıkamadım.
Başa dön
Kullanıcı profilini gör Özel mesaj gönder E-mail'i gönder Kullanıcının web sitesini ziyaret et
acemihp
Newbie
Newbie


Kayıt: Aug 03, 2007
Mesajlar: 6

MesajTarih: Çrş Ağu 08, 2007 7:08 am    Mesaj konusu: Alıntıyla Cevap Ver

soylemesi ayip bir sehir portali yapiyorum 2 kurusluk bilgimizle bu olayi kategori ve makale ekleme islemini bitirmem nerdeyse scriptin en buyuk ozelligini bitirmem demek olacak o yuzden tam detayli bir bilgi bulamiyorum bu konuyla ilgili hep bir yerlerde eksiklik kaliyor ama bur vermis oldugun kategori ve alt kategori eklenmesi tam aradigim sekilde birde ona her olusturulan kategoriye makale ekleme ve kategori basliklarina resim ekleme olayini yapabilirsem buyuk bir yuk kalkmis olacak allahin izniyle ustumden nereli olduguma gelince konyaliyim yas 32 dedigin gibi istren arta kalan zamanlarda vakit geciriyoruz bu sekilde yardimlarin icin tekrar tesekurler ugur kardes
Başa dön
Kullanıcı profilini gör Özel mesaj gönder
acemihp
Newbie
Newbie


Kayıt: Aug 03, 2007
Mesajlar: 6

MesajTarih: Sal Ağu 14, 2007 10:39 pm    Mesaj konusu: Alıntıyla Cevap Ver

ugur kardes sana zahmet olmasin diye bir cok yerde sorumun cevabini aradim ama herkes bir yerleri okumami soyluyor anlasam zaten yaparim eger yapabilme imkanin varsa cok sevinirim inan
Başa dön
Kullanıcı profilini gör Özel mesaj gönder
ugurturan
Newbie
Newbie


Kayıt: Aug 04, 2006
Mesajlar: 70

MesajTarih: Cum Ağu 17, 2007 1:18 am    Mesaj konusu: Alıntıyla Cevap Ver

Güzel kardeşim ne desen haklısın. Biliyorum sözümde duramadım. Çok özür dilerim. Akraba ziyaretleri ve gelen akrabaları ağırlamak derken. ınan bende kendi scriptimi bile bitiremedim. Ama benim scriptim bitmek üzere ve bitmeden de istersen sana genel anlamda scripti vereyim. ıncele ve kafana göre bişeyler oluştur inş. Zaten senin istediğin türden bir scripttir. Her işini kesinlikle göreceğine eminim inş.
Başa dön
Kullanıcı profilini gör Özel mesaj gönder E-mail'i gönder Kullanıcının web sitesini ziyaret et
acemihp
Newbie
Newbie


Kayıt: Aug 03, 2007
Mesajlar: 6

MesajTarih: Cum Ağu 17, 2007 5:14 pm    Mesaj konusu: Alıntıyla Cevap Ver

cok memnun olurum ugur kardes allah razi olsun yardimlarindan dolayi tesekurederim tekrardan cevabini bekliyorum pm ile de ulastirabilirsin
Başa dön
Kullanıcı profilini gör Özel mesaj gönder
nemesis
Newbie
Newbie


Kayıt: May 23, 2008
Mesajlar: 2

MesajTarih: Cum May 23, 2008 11:30 am    Mesaj konusu: kodlar için saolun Alıntıyla Cevap Ver

Ben ana sayfada açılır menüde kategorileri ve alt kategorileri listeletmek istiyorum. Kategorilere ve alt kategorilere göre açıklamalar da getirmek istiyorum. Ama anasayfaya getiremedim. Bana yardımcı olursanız çok sevinirim.

Şimdiden çok teşekkürler..
Başa dön
Kullanıcı profilini gör Özel mesaj gönder
ugurturan
Newbie
Newbie


Kayıt: Aug 04, 2006
Mesajlar: 70

MesajTarih: Pzr May 25, 2008 10:22 am    Mesaj konusu: Alıntıyla Cevap Ver

aşağıdaki kodlar tam senin aradığın cinsten olmasada eminim işini iyice görür inş. Çünkü mantık aynı ve sen açılan kategoriler istiyorsun. Bu açılmıyor. Sen açarsın inş. Şimdilik dar zamanda sana bu kadar yardımcı olabiliyorum. Hayırlı günler kardeşim.

Kod:
<Table class="solmenubaslik"><Tr><Td Width="165" height="18">&nbsp;<?php echo $dil["kategoriler"];?></Td></Tr></Table>
<Table Width="175" class="menucizgiler"><tr><td>
<?php
function Kategorile($kategori,$derinlik)
{
$derinlik = $derinlik + 1;
//$u = @mysql_query("SELECT * FROM urunler WHERE urunid = '$urunid';");
$s = @mysql_query("SELECT * FROM kategoriler WHERE altkategori_id = '$kategori' order by sira;");
while ( $c = @mysql_fetch_row($s))
{
ı>
<Table Border="0" CellPadding="0" CellSpacing="1">
<?php
$Alt_Say_Sor=@mysql_query("SELECT COUNT(urunid) AS Alt_Say FROM urunler WHERE urunid='$c[0]'");
$Alt_Say_Yaz=@mysql_fetch_assoc($Alt_Say_Sor);
if($c[2] == 0){?>
<Tr class="menu_ust">
<?php }?>
<Td Width="175">
   <div id="menu"><a href="index.php?sayfa=kategori_urunler&kat_id=<?php echo $c[0]; ?>">
<?php 
      echo str_repeat("&nbsp;",$derinlik). $c[1];
      //echo("<font color='#999999'>($Alt_Say_Yaz[Alt_Say])</font>");?></a>
   </div>
</Td></Tr></Table>
<?php
//Kategorile($c[0],$derinlik);
}
}
Kategorile(0,0);
ı>
</Td>
</Tr></table>
Başa dön
Kullanıcı profilini gör Özel mesaj gönder E-mail'i gönder Kullanıcının web sitesini ziyaret et
Mesajları göster:   
Yeni Başlık Gönder   Cevap Gönder    UGURTURAN Forum Ana Sayfası -> PHP Scriptler Tüm saatler GMT +2 Saat
Sayfa 1, 2  Sonraki
1. sayfa (Toplam 2 sayfa)

 
 Forum Seçin:   
Bu forumda yeni konular açamazsınız
Bu forumdaki mesajlara cevap veremezsiniz
Bu forumdaki mesajlarınızı değiştiremezsiniz
Bu forumdaki mesajlarınızı silemezsiniz
Bu forumdaki anketlerde oy kullanamazsınız


Powered by phpBB © 2001 phpBB Group
Untitled Document
 
 

PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Sayfa Üretimi: 0.19 Saniye
.: ugurturan style Ugur Turan Themes :.
.: Original Theme (ugurturan) by: ugurturan