MyBB 1.8.17 Login Sorunu Çözümü

MyBB Kitabı - Türkçe MyBB Destek!
Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
MyBB Kullaıcı Grupları Sayfası Yapımı

#1
Selamlar,
Çoğu kişi forumunda kullanıcı gruplarını yazıya döküyor rütbelerimiz konusu diye işte. Biz neden bunu sayfa haline getirmeyelim ki :)
Bu sayfa, php kodlarında belirlerdiğiniz rütbelerin kullanıcı grubunun resmini, adını, ve kaç kişinin belirlediğiniz rütbeye sahip olduğunu gösterir.
Gereksiz bir yer vardı, tarafımca kaldırılıp kısa yoldan hali eklendi.
Not: Bu modifikasyon  10tl.net sistemine yapılamaz, dosya oluşturmak gerekiyor. [b]Bu sayfayı oluşturmanızı istemekteyim.
Yapımcı: Brian
Önizleme:
68747470733a2f2f707265766965772e6962622e...642e706e67
Sayfa türkçedir, sadece görüntü ingilizcedir.

usergroups.php diye bir sayfa oluşturup, aşağıdaki kodları yapıştırıp kaydedin.[/color][/b]
PHP Kod:
<?php

define
'IN_MYBB'TRUE );
define'NAME'basename__FILE__ ) );
define'THIS_SCRIPT'NAME );
require_once 
__DIR__ '/global.php';
if(
$mybb->user['uid'] == 0)
 
   error_no_permission();

add_breadcrumb'Kullanıcı Grupları'NAME );

$allowed_groups = array( 'x','x','x'); // Please group IDs here

if( !$mybb->input['request'] )
{
 
   foreach $allowed_groups as &$groupid )
 
   {
 
       $groupcache $cache->read'usergroups' );

 
       $query $db->write_query"
            SELECT *
            FROM "
.TABLE_PREFIX."usergroups
            WHERE `gid`='"
.(int)$groupid."'
            ORDER BY gid
        " 
);

 
       if( isset( $query->num_rows ) )
 
       {
 
           while$groups $db->fetch_array$query ) )
 
           {
 
               /* Fetch group leaders */
 
               $leaders_array = array();
 
               $leader_query $db->write_query("
                    SELECT u.username, u.uid, u.usergroup, u.displaygroup, l.gid
                    FROM "
.TABLE_PREFIX."groupleaders l
                    INNER JOIN "
.TABLE_PREFIX."users u ON (u.uid=l.uid)
                    WHERE `gid`='"
.(int)$groupid."'
                "
);

 
               while$leader $db->fetch_array$leader_query ) )
 
                                  
                    $leaders 
build_profile_linkformat_name$leader['username'], ( !empty( $leader['displaygroup'] ) ? $leader['displaygroup'] : $leader['usergroup'] ) ), $leader['uid'] );
 
                   array_push$leaders_array$leaders );
 
               }

 
               $usergroups['groupleaders'] = rtrimimplode', '$leaders_array ), ', ' );

 
               if( !$usergroups['groupleaders'] )
 
               {
 
                   $usergroups['groupleaders'] = 'None';
 
               }

 
               $usergroups['groupname'] = htmlspecialchars_uni$groupcache[$groups['gid']]['title'] );
 
               $usergroups['groupdesc'] = htmlspecialchars_uni$groupcache[$groups['gid']]['description'] );
 
               $usergroups['userbar'] = '<img src="'.$groupcache[$groups['gid']]['image'].'" />';
 
               $usergroups['gid'] = intval$groupcache[$groups['gid']]['gid'] );
 
               $usergroups['members'] = intvalcountmembers$groupid ) );

 
               eval"\$groups_row .= \"".$templates->get'usergroups_row' )."\";" );
 
           }
 
       }
 
       else
        
{
 
           $groups_row '<td class="trow1" align="left">No usergroups was found.</td>';
 
       }
 
   }
}

eval( 
"\$usergroups_page = \"".$templates->get'usergroups' )."\";" );
output_page$usergroups_page );


/* Count members function */
function countmembers$groupid )
{
 
   global $db$plugins;

 
   $query $db->query("
        SELECT g.gid, COUNT(u.uid) AS users
        FROM "
.TABLE_PREFIX."users u
        LEFT JOIN "
.TABLE_PREFIX."usergroups g ON (g.gid=u.usergroup)
        GROUP BY g.gid
    "
);

 
   while$groupcount $db->fetch_array$query ) )
 
   {
 
       $primaryusers[$groupcount['gid']] = $groupcount['users'];
 
   }

 
   switch$db->type )
 
   {
 
       case "pgsql":
 
       case "sqlite":
 
           $query $db->query("
                SELECT g.gid, COUNT(u.uid) AS users
                FROM "
.TABLE_PREFIX."users u
                LEFT JOIN "
.TABLE_PREFIX."usergroups g ON (','|| u.additionalgroups|| ',' LIKE '%,'|| g.gid|| ',%')
                WHERE g.gid != '0' AND g.gid is not NULL GROUP BY g.gid
            "
);

 
       break;
 
       default:
 
           $query $db->query("
                SELECT g.gid, COUNT(u.uid) AS users
                FROM "
.TABLE_PREFIX."users u
                LEFT JOIN "
.TABLE_PREFIX."usergroups g ON (CONCAT(',', u.additionalgroups, ',') LIKE CONCAT('%,', g.gid, ',%'))
                WHERE g.gid != '0' AND g.gid is not NULL GROUP BY g.gid
            "
);
 
       }

 
       while$groupcount $db->fetch_array$query ) )
 
       {
 
           $secondaryusers[$groupcount['gid']] = $groupcount['users'];
 
       }
 
               
        $numusers 
$primaryusers[$groupid];
 
       $numusers += $secondaryusers[$groupid];
 
               
        if
( !$numusers )
 
       {
 
           $numusers "0";
 
       }

 
       return $numusers;
 
   }
?>


[b]$allowed_groups = array( 'x','x','x'); bu kodu bulun ve göstermek istediğiniz grupların id numaralarını x olan bölüme yazın.


Sonra ise, Admin Paneli > Temalar & Şablonlar > Şablonlar > Genel Şablonlar > usergroups adlı bir şablon açıp içine aşağıdaki kodları yapıştırıyoruz.
[/b]
Kod:
<html>
   <head>
       <title>
           {$mybb->settings['bbname']} - Kullanıcı Grupları
       </title>
       {$headerinclude}
   </head>
   <body>
       <style>
           .joingroup {
               color: #fff;
               text-shadow: none;
               padding: 5px 8px;
               border-radius: 2px;
               text-align: center;
               margin-left: 5px;
               background: rgba(0,0,0,0.2);
           }
           .joingroup:hover {
               cursor: pointer;
               background: rgb(167, 70, 70);
           }
       </style>
       {$header}
       <table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder">
           <tr>
               <td class="thead" colspan="5"><strong>Kullanıcı Grupları</strong></td>
           </tr>
           <tr>
               <td class="trow1">{$groups_row}</td>
           </tr>
       </table>
       {$footer}
   </body>
</html>

Admin Paneli > Temalar & Şablonlar > Şablonlar > Genel Şablonlar > usergroups_row adlı bir şablon açıp içine aşağıdaki kodları yapıştırın.

Kod:
<div style="width: 48%; min-height: 150px; float: left; border: 1px #333 solid; margin: 4px; padding: 2px;">
   <table width="100%" cellspacing="0" cellpadding="5" border="0">
       <tr>
           <td width="75%">
               <span style="color: #fff; font-size: 15px;">{$usergroups['groupname']}</span><br />
               </br>{$usergroups['groupdesc']}<br />
       Bu gruba sahip olan kişi sayısı: {$usergroups['members']}
       </td>
   <td width="25%" align="right" valign="top">
       {$usergroups['userbar']}
   </td>
   </tr>
</table>
</div>

[b]Not:
Temanıza yazı rengi uymuyor veya resimdeki gibi ise, <span style="color: #fff; font-size: 15px;">  bu kodu bulun ve #fff kodunu istediğinize göre değiştirin. Default temada black olarak tespit ettik onun rengini. Deneyerek ayarlayabilirsiniz.
Herşeyi eksiksiz bir şekilde yaptıysanız, http://siteadresiniz.com/usergroups.php sayfasına gidebilirsiniz :)
Kolay gelsin. Sorun çıkarsa yorumlara yazabilirsiniz.
[/b]
10TL.NET - AR-GE Ekibi Lideri
#efsanebaşkan
#khontkar

Sana söyleyecek hiçbi' şeyim yok
Çünkü anlamazsın.

Mükemmeliyetçilik adına..

WWW
Cevapla
#2
$allowed_groups = array(
bu kısım bizde sabit olamaz. yüzlerce forumumuz var. hangi id yi yazacağız ? yani bu 10tl.net e bu haliylu uygulanamaz.
ÖM lere eskiden yeniye doğru bakarım - Şuan Mybb Upgrade ile meşgulüm.
Tüm Forumlarınızdaki tema ve şablonlarınızı yedekleyiniz. Yakında tüm forumlar Mybb 1.8.17'ye güncellenecek ve ozaman temaları resetlemeniz gerekecek. 

Not: Moderatör KP deki bir sorundan dolayı, normalde sınırlı banlanan bazılarının sınırsız ban aldığını öğrendik. Gereksiz yere sınırsız ban alanları ileride düzelteceğiz. Sınırsız ban NŞA'da yapmıyoruz. sadece spam v.b. durumunda. 
Bu sorunun mybb 1.8.17 ile düzelmesini bekliyoruz, şuan onun üzerinde çalışıyoruz. 

İpucu: http://destek.10tr.net/showthread.php?tid=71211
http://destek.10tr.net/showthread.php?tid=71414

Haksızlığa uğrayan varsa sırayla diğer görevlilere, sonra adminlere, tatmin olmazlarsa da bana yazabilirler. Elimizden geldiği kadar adaletli olmaya çalışacağız. 
Görevli başvurularına ilk fırsatta bakacağız. 

Ana prensibimiz "İnsana/Yaradılana Saygı"
Amacımız sadece para kazanmak ya da geyik değil, aynı zamanda faydalı şeyler yapmak. sadece para kazanmak olsaydı, yapılacak birçok şey vardı...
Cevapla
#3
Onu tamamen unutmuşum adminim.
10TL.NET - AR-GE Ekibi Lideri
#efsanebaşkan
#khontkar

Sana söyleyecek hiçbi' şeyim yok
Çünkü anlamazsın.

Mükemmeliyetçilik adına..

WWW
Cevapla

Şu anda bu konuyu okuyanlar: 2 Ziyaretçi

Hızlı Menü:

  • Gece
  • Normal


  • MyBBLab - MyBB Destek -