Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 1 misafir

Günlük şiir Limiti

İleti airychild » 20 Arl 2008

s.a Arkadaşlar çok ihtiyacım var bilmiyorum yardımcı olabilir misiniz.
Üyelere şiir ekleme limiti getirebilirmiyiz. Ve bunu belirli üye gruplarına yapabilirmiyiz mesela sadece register grubu günde 5 şiir Yada her Katagoriye 2 şiir gibi. Yada en basit şekilde nasıl olur.
Saygılarımla..
Tüm Qproje Ekibine Gönülden Teşekkürler...
Rumuz: airychild
Kıdemli Üyemiz
Durum: Offline
Kullanıcı avatarı

İleti: 176
Kayıt: 10 Oca 2008

Re: Günlük şiir Limiti

İleti Hasan » 28 Arl 2008

siirler.php içerisindeki function SiirEkle içerisin aşağıdaki gibi bir kod ekleyebilirsin. Ben onu sadece Kayıtlı Üyeler ( Registered ) için yaptım istersen çoğaltabilirsin kod bilgin buna yeter var ;)

Kod: Tümünü seç
   if ($my->usertype == 'Registered') {
      $sorgu = "SELECT COUNT(*)"
      . "\n FROM #__siirler where s_ekleyen = " . $my->id;
      $database->setQuery($sorgu);
      $toplam_siir = $database->loadResult();
      
      echo $my->id."asdasdasdasd";
      
      if ($toplam_siir >= 5){
         echo "<script>alert('Siir ekleme limitinizi doldurmussunuz!'); window.history.go(-1);</script>";
         }
   }
Quality Joomla! Projects Team
Rumuz: Hasan
GeliÅŸtirici
Durum: Offline
Kullanıcı avatarı

İleti: 1250
Kayıt: 05 Eyl 2007

Re: Günlük şiir Limiti

İleti airychild » 28 Arl 2008

Hocam ilginiz için öncelikle teşekkür ediyorum. Yanlış anlamadıysam siz toplam şiir ekleme limiti belirlemişsiniz . Benim demek istediğim içinde bulunulan gün içinde eklenen şiir limiti 5 yapabilmek.
Rumuz: airychild
Kıdemli Üyemiz
Durum: Offline
Kullanıcı avatarı

İleti: 176
Kayıt: 10 Oca 2008

Re: Günlük şiir Limiti

İleti Hasan » 29 Arl 2008

o halde bu işini görebilir.
Kod: Tümünü seç
   if ($my->usertype == 'Registered') {
      
      setlocale (LC_TIME, $mosConfig_locale);
      $zaman_farki="7";
      $zaman=($zaman_farki*3600)+time();
      $simdiki_tarih = strftime("%d.%m.%Y",$zaman);
         
      $database->setQuery("SELECT a.*"
          . "\n FROM #__siirler AS a"
          . "\n WHERE a.s_ekleyen = '$my->id' "
          . "\n ORDER BY a.id DESC");
      $son_siirleri = $database->loadObjectList();
      
      $say =1;
      foreach($son_siirleri as $ss){
         $son_siir_tarihi = strftime("%d.%m.%Y", $ss->s_tarih);
         if ($son_siir_tarihi == $simdiki_tarih){
            $saydir = $say++;
            echo $saydir;
            if ($saydir >= 5){
               echo "<script>alert('Bugünkü ÅŸiir ekleme limitinizi doldurmuÅŸsunuz!'); window.history.go(-1);</script>";
               }
         }
      }
   }

Quality Joomla! Projects Team
Rumuz: Hasan
GeliÅŸtirici
Durum: Offline
Kullanıcı avatarı

İleti: 1250
Kayıt: 05 Eyl 2007

Re: Günlük şiir Limiti

İleti airychild » 29 Arl 2008

Hasan hocam test ettiniz mi acaba ben denedim ama olmadı neden olabilir acaba ?
Rumuz: airychild
Kıdemli Üyemiz
Durum: Offline
Kullanıcı avatarı

İleti: 176
Kayıt: 10 Oca 2008

Re: Günlük şiir Limiti

İleti Hasan » 30 Arl 2008

test ederek yapıyorum zaten tekrardan şimdi 5 adet şiir ekledim şiir göndere basınca uyardı Joomla1.0x de denedim sendeki joomla 1.5 ise onda da deniyim istersen.
Quality Joomla! Projects Team
Rumuz: Hasan
GeliÅŸtirici
Durum: Offline
Kullanıcı avatarı

İleti: 1250
Kayıt: 05 Eyl 2007

Re: Günlük şiir Limiti

İleti airychild » 30 Arl 2008

yok hocam bende 1.0.15 kullanıyorum
function Sekle kısmında
HTML_siirler::S_eklenecek($row, $options, $Listeler);
bunun hemen altına yerleştirdim kodu. Şiirler admin onaylı onaylıyorum 5 şiiride fakat 6 cıyı gönderebiliyorum hatam varmı acaba hasan hocam?
Rumuz: airychild
Kıdemli Üyemiz
Durum: Offline
Kullanıcı avatarı

İleti: 176
Kayıt: 10 Oca 2008

Re: Günlük şiir Limiti

İleti Hasan » 30 Arl 2008

sen eski bileşeni kullanıyon update yapsan iyi olur.
Quality Joomla! Projects Team
Rumuz: Hasan
GeliÅŸtirici
Durum: Offline
Kullanıcı avatarı

İleti: 1250
Kayıt: 05 Eyl 2007

Re: Günlük şiir Limiti

İleti airychild » 30 Arl 2008

hocam http://www.qproje.com/tr/dosyalar/siirler-bileseni.html
bu adresdeki bileÅŸeni indirip kurdum dediÄŸiniz gibi kodu ekledim fakat sizin dediÄŸiniz gibi
function SiirEkle diye biÅŸey yok ama
function Sekle($uid = 0, $option = 'com_siirler')
bu satırın aşağısında bulunan
HTML_siirler::S_eklenecek($row, $options, $Listeler);
kısmının altına ekliyorum fakat olmuyor. Joomla 1.0 kullanıyorum tekrar bi yönlendirin beni ben şaşırdım kaldım hocam...
Rumuz: airychild
Kıdemli Üyemiz
Durum: Offline
Kullanıcı avatarı

İleti: 176
Kayıt: 10 Oca 2008

Re: Günlük şiir Limiti

İleti airychild » 30 Arl 2008

yani şöyle olan kodu
Kod: Tümünü seç
// Ekleme Islemi - Adding Function
function Sekle($uid = 0, $option = 'com_siirler')
{
    global $database, $my, $mosConfig_absolute_path, $mainframe;
    mosMakeHtmlSafe($row, ENT_QUOTES);

    if ($uid) {
        $row->checkout($my->id);
        $query = "SELECT id, k_adi"
         . "\n FROM #__siirler"
         . "\n WHERE id = " . (int) $uid
         . "\n ORDER BY id" ;
        $database->setQuery($query);
        $options = $database->loadObjectList();
    } else {
        $row->yayinda = 1;
    }

    $Listeler["kategoriler"] = AcKapaKategoriListesi("$row->ustkat", "kats");
    HTML_siirler::S_eklenecek($row, $options, $Listeler);
   
}


ÅŸu ÅŸekilde deÄŸiÅŸtirdim

Kod: Tümünü seç
// Ekleme Islemi - Adding Function
function Sekle($uid = 0, $option = 'com_siirler')
{
    global $database, $my, $mosConfig_absolute_path, $mainframe;
    mosMakeHtmlSafe($row, ENT_QUOTES);

    if ($uid) {
        $row->checkout($my->id);
        $query = "SELECT id, k_adi"
         . "\n FROM #__siirler"
         . "\n WHERE id = " . (int) $uid
         . "\n ORDER BY id" ;
        $database->setQuery($query);
        $options = $database->loadObjectList();
    } else {
        $row->yayinda = 1;
    }

    $Listeler["kategoriler"] = AcKapaKategoriListesi("$row->ustkat", "kats");
    HTML_siirler::S_eklenecek($row, $options, $Listeler);
      if ($my->usertype == 'Registered') {
     
      setlocale (LC_TIME, $mosConfig_locale);
      $zaman_farki="7";
      $zaman=($zaman_farki*3600)+time();
      $simdiki_tarih = strftime("%d.%m.%Y",$zaman);
         
      $database->setQuery("SELECT a.*"
          . "\n FROM #__siirler AS a"
          . "\n WHERE a.s_ekleyen = '$my->id' "
          . "\n ORDER BY a.id DESC");
      $son_siirleri = $database->loadObjectList();
     
      $say =1;
      foreach($son_siirleri as $ss){
         $son_siir_tarihi = strftime("%d.%m.%Y", $ss->s_tarih);
         if ($son_siir_tarihi == $simdiki_tarih){
            $saydir = $say++;
            echo $saydir;
            if ($saydir >= 5){
               echo "<script>alert('Bugünkü ÅŸiir ekleme limitinizi doldurmuÅŸsunuz!'); window.history.go(-1);</script>";
               }
         }
      }
   }

}
Rumuz: airychild
Kıdemli Üyemiz
Durum: Offline
Kullanıcı avatarı

İleti: 176
Kayıt: 10 Oca 2008

Re: Günlük şiir Limiti

İleti Hasan » 31 Arl 2008

en başa koyman gerekiyodu :) bide böyle dene bakalım.

Kod: Tümünü seç
// Ekleme Islemi - Adding Function
function Sekle($uid = 0, $option = 'com_siirler')
{
    global $database, $my, $mosConfig_absolute_path, $mainframe;
    mosMakeHtmlSafe($row, ENT_QUOTES);
   
    if ($my->usertype == 'Registered') {
     
      setlocale (LC_TIME, $mosConfig_locale);
      $zaman_farki="7";
      $zaman=($zaman_farki*3600)+time();
      $simdiki_tarih = strftime("%d.%m.%Y",$zaman);
         
      $database->setQuery("SELECT a.*"
          . "\n FROM #__siirler AS a"
          . "\n WHERE a.s_ekleyen = '$my->id' "
          . "\n ORDER BY a.id DESC");
      $son_siirleri = $database->loadObjectList();
     
      $say =1;
      foreach($son_siirleri as $ss){
         $son_siir_tarihi = strftime("%d.%m.%Y", $ss->s_tarih);
         if ($son_siir_tarihi == $simdiki_tarih){
            $saydir = $say++;
            if ($saydir >= 5){
               echo "<script>alert('Bugünkü ÅŸiir ekleme limitinizi doldurmuÅŸsunuz!'); window.history.go(-1);</script>";
               }
         }
      }
   }
   

    if ($uid) {
        $row->checkout($my->id);
        $query = "SELECT id, k_adi"
         . "\n FROM #__siirler"
         . "\n WHERE id = " . (int) $uid
         . "\n ORDER BY id" ;
        $database->setQuery($query);
        $options = $database->loadObjectList();
    } else {
        $row->yayinda = 1;
    }

    $Listeler["kategoriler"] = AcKapaKategoriListesi("$row->ustkat", "kats");
    HTML_siirler::S_eklenecek($row, $options, $Listeler);
}

Quality Joomla! Projects Team
Rumuz: Hasan
GeliÅŸtirici
Durum: Offline
Kullanıcı avatarı

İleti: 1250
Kayıt: 05 Eyl 2007

Re: Günlük şiir Limiti

İleti airychild » 31 Arl 2008

Hocam ben ilk şekilde localde çalıştırdım fakat siteye attıgımda çalışmadı
Kod: Tümünü seç
setlocale (LC_TIME, $mosConfig_locale);
      $zaman_farki="7";
      $zaman=($zaman_farki*3600)+time();
      $simdiki_tarih = strftime("%d.%m.%Y",$zaman);

bu satırlardaki zaman farkı değerini 0 olarak değiştirdiğimde çalıştı tabi ne kadar sağlıklı çalışacak bilmiyorum çünkü benim sitede zaman farkı +2 olarak ayarlı.
$zaman_farki="7"; bu kısmı 2 olarak değiştirdiğimde bile çalışmadı sizce benim sitenin zaman farkı + 2 olarak düşünülürse buradaki değeri nasıl ayarlamalıyız.
Rumuz: airychild
Kıdemli Üyemiz
Durum: Offline
Kullanıcı avatarı

İleti: 176
Kayıt: 10 Oca 2008

Re: Günlük şiir Limiti

İleti Hasan » 31 Arl 2008

Ayarlardan bakmak lazım ona eğer 0 dediğinde ve 5 şiir ekledikten sonra uyarı veriyorsa öyle devam et :D
Quality Joomla! Projects Team
Rumuz: Hasan
GeliÅŸtirici
Durum: Offline
Kullanıcı avatarı

İleti: 1250
Kayıt: 05 Eyl 2007

Re: Günlük şiir Limiti

İleti airychild » 31 Arl 2008

o 5 şiiri ben 1 şiir olarak ayarladım ve uyarıyı aldım. Ama gün içinde bu uyarı sürecekmi onu tam bilmiyorum hocam :)
Rumuz: airychild
Kıdemli Üyemiz
Durum: Offline
Kullanıcı avatarı

İleti: 176
Kayıt: 10 Oca 2008

Re: Günlük şiir Limiti

İleti Hasan » 31 Arl 2008

Sürer merak etme :)
Quality Joomla! Projects Team
Rumuz: Hasan
GeliÅŸtirici
Durum: Offline
Kullanıcı avatarı

İleti: 1250
Kayıt: 05 Eyl 2007

Sonraki

Geliştirme & Özelleştirme

Yapimci phpBB © 2009 phpBB Group Style Tasarim Q-Proje