merakli
  • merakli
  • 7 yıl önce sordu
  • Php ile facebook benzeri beğeni sistemi nasıl yapılır?

    Php ile facebook benzeri beğenme sistemi nasıl yapılır? Merhabalar ben php ile facebook benzeri beğenme sistemi yapmak istiyorum.Bunu nasıl yapabilirim?
    Cevaplar(16)
    ismail
  • ismail
  • 7 yıl önce Cevapladı
  • Veritabanın şu şekilde olmalı; begeni_id, begenilen_id, begenen_id, begeni_tarihi, daha sonra ise kodlama kısmına geçiyoruz.Şimdi veritabanında neler olacak anlatıyorum. begeni_id kısmına dokunmuyorsunuz kendisi otomatik artıyor o. begenilen_id kısmına beğenilen gönderinin id'sini kaydediyoruz. begenen_id kısmına beğenenin id'sini kaydediyoruz. begeni_tarihi kısmınada beğenilen tarihi kaydediyoruz.Şimdi ilk js kodlarını yazalım.

    Yazılım Soru - Kod Kısmı

    
    
    $(function(){
            $("a.like").click(function(){
    		var nesne = $(this); //Tıklanan nesnenin id'sini alıyoruz.
    		var id = nesne.attr("id");
    		//nesnenin içinde ne yazdığına bakıyoruz.
    		var yazi = nesne.text();
    			
    	if(yazi == "Beğen"){	
    	//eğer Beğen yazıyorsa yazıyı Beğenmekten Vazgeç olarak değiştiriyoruz.
    	$(nesne).text("Beğenmekten Vazgeç");
    		var veri1 = "id="+id+"&durum=1";
    	//Burada ise ajax kodlarımızı çalıştırıyoruz.
        $.ajax({
    		type: "POST",
    		url: "begen.php",
    		data: veri1,
    		success: function(sonuaa){
    			//Sonrada id'si id'ye eşit olan ve class'ı bgnn olanın içindeki beğenme sayısını güncelliyoruz.
            $("#"+id+".bgnn").text(sonuaa);
    		}						
    	});	
    
    

    Şimdi .js kısmı bitti sırada .php kısmında.begen.php dosyamızı oluşturuyoruz aşağıdaki kodları yapıştırıyoruz.

    Yazılım Soru - Kod Kısmı

    
    
    if($_POST){	
    	$likepost = $_POST["id"];
    	$ben = $_SESSION["uye_id"];
    $v = $db->prepare("insert into begen set begenilen_id=?, begenen_id=? ");		
    $x = $v->execute(array($likepost, $ben));	
    
    
    }else{
    	
    }
    
    

    Şimdi facebook gibi anlık olarak beğenilecek.
    Beğen (2) Yorumlar(0) Yorum Yaz
    Gönder
    blizzard3
  • blizzard3
  • 7 yıl önce Cevapladı
  • Usta bisey sorucam burda donguye sokmaya gerek yokmu sonucta bitane yorumu begenmiyoz birden fazla yorum var..
    Beğen (1) Yorumlar(0) Yorum Yaz
    Gönder
    ismail
  • ismail
  • 7 yıl önce Cevapladı
  • Neden döngüye sokalım ki? Birden fazla yorumu beğensek bile aynı anda sadece bir yorumu beğenebiliriz.Zaten ajax ile her tıklamada bir beğeni kaydı açılıyor.Üstelik döngüye sokarsak aynı veriyi birden çok kez kaydetmez mi?
    Beğen (1) Yorumlar(0) Yorum Yaz
    Gönder
    blizzard3
  • blizzard3
  • 7 yıl önce Cevapladı
  • Ozaman dongudeki her yorumun idsini yakaliyorsun onuda gostermen gerekir bence cunku ben orasini anlamadim dungude bir a href var ve id si like diyosun galiba olemi yakaliyon
    Beğen (0) Yorumlar(0) Yorum Yaz
    Gönder
    blizzard3
  • blizzard3
  • 7 yıl önce Cevapladı
  • Hocam cevabini bekliyorum html tarafi nasil olcak acaba
    Beğen (0) Yorumlar(0) Yorum Yaz
    Gönder
    ismail
  • ismail
  • 7 yıl önce Cevapladı
  • Html kısmıda şu şekilde yazmayı unutmuşum.

    Yazılım Soru - Kod Kısmı

    
    <a href="javaScript:;" class="lkbtn like" id="beğenilenid">Beğen</a>	
    

    Yukardaki html kodunda id'nin içinde beğenilecek olan gönderinin id'si olacak.Zaten tıklandığı zaman ajax komutları çalışmaya başlayacak.

    Yazılım Soru - Kod Kısmı

    
    <a class="bgnn" id="beğenilenid" href="JavaScript:;">20 Beğenme</a>
    

    Yukarıdaki kodda beğenilenid yerine yine beğenilen gönderinin id'sini yazarsınız.20 beğenme kısmında da 20 yerine o beğenilen gönderinin kaç adet beğenisi var onu çekersiniz.
    Beğen (1) Yorumlar(0) Yorum Yaz
    Gönder
    blizzard3
  • blizzard3
  • 7 yıl önce Cevapladı
  • kardes sana zahmet olmassa &durum=1 olayını tam olarak nasıl yaptıgını bi ornekle gosterebilirmisin simdi ajax tarafından obur taraf nası gonderiliyor ben anlamadımda ?
    Beğen (0) Yorumlar(0) Yorum Yaz
    Gönder
    ismail
  • ismail
  • 7 yıl önce Cevapladı
  • bak şimdi durum=1 olayı tam olarak şu begen.php ye bilgi geldiğinde ilk veritabanından kontrol ediyorum bu uye bu postu beğenmiş mi diye.Daha sonra duruma bakıyorum if else ile eğer durum bir ise ve beğeni yoksa yeni beğeni ekliyorum veritabanına eğer durum iki ise ve o kişi beğenmişse beğenmekten vazgeç çalışıyor ve o uyenin beğenisi veritabanından siliniyor.
    Beğen (1) Yorumlar(0) Yorum Yaz
    Gönder
    blizzard3
  • blizzard3
  • 7 yıl önce Cevapladı
  • ajax tarafında yazmana ne gerek varki peki &durum=1 seklinde begen.php de kontrol ediyosun
    Beğen (0) Yorumlar(0) Yorum Yaz
    Gönder
    ismail
  • ismail
  • 7 yıl önce Cevapladı
  • İşte bak ajaxta durum=1 yazmamın sebebi begen.php'ye giden verinin beğenimi yoksa beğeniyi geri çekmemi olduğunu belirtmek.
    Beğen (0) Yorumlar(0) Yorum Yaz
    Gönder
    blizzard3
  • blizzard3
  • 7 yıl önce Cevapladı
  • hocam simdi ajax tarafında &durum=1 dediğin zaman adam begensede begenmesede &durum=2 olmazki dinamik deyil yani bunu anlamadım ben
    Beğen (0) Yorumlar(0) Yorum Yaz
    Gönder
    blizzard3
  • blizzard3
  • 7 yıl önce Cevapladı
  • hocam sen kodları yazarsan benim kafa ancak ozaman anlar..
    Beğen (0) Yorumlar(0) Yorum Yaz
    Gönder
    blizzard3
  • blizzard3
  • 7 yıl önce Cevapladı
  • bu olayı yapmam lazım cunku favorilere ekle gibi seyler yapmaya calıstıgımızda favoriden cıkar demem lazım gosterirsen gercekten cok yardım etmis olursun :)
    Beğen (0) Yorumlar(0) Yorum Yaz
    Gönder
    ismail
  • ismail
  • 7 yıl önce Cevapladı
  • Birde bunu dene

    Yazılım Soru - Kod Kısmı

    
    	if(yazi == "Beğen"){
               
    	$(nesne).text("Beğenmekten Vazgeç");
    		var veri1 = "id="+id+"&durum=1";
        $.ajax({
    		type: "POST",
    		url: "begen.php",
    		data: veri1,
    		success: function(sonuaa){
            $("#"+id+".bgnn").text(sonuaa);
    		}						
    	});	
    
             }else{	
    		$(nesne).text("Beğen");
    		var veri2 = "id="+id+"&durum=2";
        $.ajax({
    		type: "POST",
    		url: "begen.php",
    		data: veri2,
    		success: function(sonua){
    
    		}						
    	});	
    }
    

    Bu arada bir videonda bu siteyi izleyenlerine gösterir misin? İnsanlar daha çok soru sorar bu şekilde daha çok bilgi çıkar bu siteden?
    Beğen (1) Yorumlar(0) Yorum Yaz
    Gönder
    blizzard3
  • blizzard3
  • 7 yıl önce Cevapladı
  • olayı anladım gibi ama begenmekten vazgez yazısı sayfayı yenileyince ucuyor bu arada reklamını yaparım bi ara..
    Beğen (0) Yorumlar(0) Yorum Yaz
    Gönder
    ismail
  • ismail
  • 7 yıl önce Cevapladı
  • Eyvallah sağolasın.Valla beğenmekten vazgeç yazısı neden uçuyor bende anlamadım.
    Beğen (1) Yorumlar(0) Yorum Yaz
    Gönder

    Cevap yazabilmek için Giriş yapmalısınız.Giriş yapmak için buraya Tıklayın.

    Kodlarınızı aşağıdaki alana yapıştırın.

  • Kod Ekle İptal Et
  • Üyeler
    Blog
    Hakkında
    Lab
    Gece Modu
    Giriş Yap
    Kayıt Ol
  • Giriş Yap
  • Şifremi unuttum
  • Kayıt olmak için tıklayın!