• 23-01-2014, 19:13:44
    #1
    Merhaba arkadaşlar ajax ile toplu etiket çekmek istiyorum fakat bir sorun oluyor hemen izah edeyim sizlere her konunun etiketini ayrı çekmek istediğimde aşağıdaki fonksiyonu çalıştırıyorum.

    function etiket_getir(id)
    {
        $.ajax({
            type: "POST",
            url: "etiket.php",
            success: function(gelen) {
    			$('#etiket' + id).val(gelen);
            }
        });
    }
    Ama sayfadaki tüm konulara etiket çekmek istediğim zaman tüm konulara aynı etiketi çekiyor ben hepsine farklı etiket çektirmek istiyorum yardım edebilirmisiniz.
  • 23-01-2014, 21:11:33
    #2
    Biraz daha açarsanız yardımcı olmaya çalışayım hocam. Kullandığınız kodda karşı sayfaya herhangibi veri göndermemişsiniz, doğal olarak tüm istekler için aynı sonuç döncektir.

    Konuyla ilgili etiketlerin neden ajaxla çekildiğini de anlamadım gerçi. Amacı da yazarsanız daha faydalı cevaplar alailirsiniz.

    İyi çalışmalar.
  • 24-01-2014, 18:25:23
    #3
    Merhaba dostum, senin yanıldığın kısım, büyük ihtimal aynı sorguyu tüm sayfadaki postlar için dördürüyorsundur. Şimdi postların geldi js ile etiketleri yazdırıyorsun ama hepsi ilk postun yada son postun etiketini alıyordur büyük ihtimal. Bunun sebebi her içeriğine farklı id vermediğin içindir.

    Her post çektiğinde en dıştaki div için id="<?php echo $id;?>" gibi bir attribute eklemelisin daha sonra js ile her postun id sine göre etiketi ilgili divlere bastırmalısın. Umarım açıklayıcı olmuştur.
  • 25-01-2014, 09:57:48
    #4
    Yok hocam hepsine farki id atadim zaten ama sorun su etiket.php her açıldığında 6 tane etiket veriyor ben etiketi çekmeye çalıştığım zaman tum postlara aynı etiketi çekiyor ben her post icin etiket. Php yi yenilemesini istiyorum

    Bu mesaj bulaşık makinasından gönderildi.
  • 25-01-2014, 19:25:08
    #5
    Arkadaşlar sorunu şoyle isah edeyim bir buton var şimdi toplu etiket diye o buton aşağıdaki fonksiyona bağlı

    function topluetiket(max){
    	for(var i=1; i<=max; i++){
    	var etiket   = $('#etiket' + i).val();
         if(encodeURIComponent(etiket) == "") { 
    			etiket_getir(i)
    		}
    
    	}
    }
    etiket_getir fonksiyonu ise şu şekilde
    function etiket_getir(id)
    {
        $.ajax({
            type: "POST",
            url: "etiket.php",
            success: function(gelen) {
    			$('#etiket' + id).val(gelen);
            }
        });
    }
    etiket.php her açıldığında "deneme1,deneme2,deneme3,deneme4,deneme5,denem e6" gibi etiket üretiyor benim sorunum toplu etiket butonuna bastığım zaman tüm postlara aynı etiketi çekiyor ben hepsi için ayrı ayrı etiket.php'yi açmasını istiyorum.
  • 25-01-2014, 23:35:30
    #6
    Misafir
    etiket_getir(id)

    id yi for un içinde yazman lazım.
  • 25-01-2014, 23:44:09
    #7
    Hocam zaten for döngüsünün içinde skype adresinizi verebilirseniz ordan detayli anlatayım sistem xyz olduğu için link veremiyorum.
  • 26-01-2014, 00:12:45
    #8
    hocam etiketgetir fonksiyonunda, yani ajaxla post işleminde etiket.php'ye konuyla ilgili hiçbi bilgi göndermeden konuya ait bilgi, etiket vs getirmesini beklemek çok anlamsız.

    etiket.php'ye, konunun id'sini de gönderin ve etiket.php'deki veritabanı sorgusunda bu idyi kullanın.
  • 26-01-2014, 00:39:15
    #9
    Etiket.php havuzdan etiket çekiyor hocam içeriği şu şekilde

    <?php
    @set_time_limit(0);
    require_once 'fonksiyon.php';
    mysql_query("SET NAMES 'utf8'"); 
    mysql_query("SET CHARACTER SET utf8"); 
    mysql_query("SET COLLATION_CONNECTION = 'utf8_turkish_ci'");  
    			$sorgu = mysql_query("SELECT * FROM etiketler WHERE durum='0' ORDER BY RAND() LIMIT ".$etiketsayisi."");
    			while($liste = mysql_fetch_object($sorgu)){
    			$i= $i +1;
    			echo $liste->etiket;
    			if($i < $etiketsayisi){
    			echo ",";
    			}
    			
    			}
    ?>