المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : هاك الإحصائية الشاملة المنتدى : هاكات في بي 3.5.0 وبعده


arabwit
22-03-2006, 06:15 PM
هاك الإحصائية الشاملة المنتدى : هاكات في بي 3.5.0 وبعده
السلام عليكم ورحمة الله وبركاته
وظيفة الهاك : هاك الإحصائية الشاملة يقدم لك المزيد من الإحصائيات عن منتداك ومنها :
ــ إحصائيات عامة كعدد الأعضاء والمدراء والمشرفين والمواضيع وزيارة المواضيع .
ــ المنتديات والمواضيع الساخنة .
ــ المواضيع والمشاركات وعدد المسجلين آخر 24 ساعة .
ــ بدء المنتدى بالتاريخ والأيام ونشاط المنتدى والأعضاء .
ــ الستايلات الموجودة وعدد من يستخدمها .
ــ قائمة بالمواضيع الأكثر زيارة والأكثر ردود والمنتديات الأكثر حركة .
ــ الوان ومقاش شاشات من يزورون منتداك .
ــ الدول وأعلامها التي يأتي منها زوار منتداك ومعلومات عن هذه الدول .
ــ أنواع مستعرضات الإنترنت وأنظمة التشغيل لزوار منتداك .
ــ قائمة بالمواقع التي يتم التوجيه والنقل منها لمنتداك .
مع تحكم سهل وتركيب أسهل .
طريقة التركيب :
أولا : قم برفع جميع محتويات المجلد upload من الملف المرفق كما هي إلى مجلد المنتدى .
ثانيا : قم بإستيراد ملف المنتج أو الـ product في الملف المرفق بإسم الإحصائيات الشاملة ونوعه xml كما تعودنا عند إضافة منتج مع منتديات الفي بي 3.5.0 وأحدث .
ثالثا : التعديل على الملفات :
في ملف includes/class_core.php إبحث عن :

// well, nothing worked, time to create a new session
if ($gotsession == false)
{
$gotsession = true;

أضف بعده :


// ################################################## ###########################
// psiStats 2006 v1.2.0 for vBulletin 3.5.0 - Hack by Anthony Kanevsky (ankan925@optonline.net) - aka Psionic Vision - BEGIN
// Rentacoder ID: 1360893
// Distributed under GPL license for non-commercial use.
// ################################################## ###########################
if (THIS_SCRIPT != 'login')
{
// ################################################## ###########################
define('PSISTATS_JS', true); // a constant which turns on the headinclude ajax code for screen depth and resolution
// ################################################## ###########################
// Country Code Detection
// ################################################## ###########################
$country_code = false;
$split_ip = preg_split( "/\./", $_SERVER['REMOTE_ADDR']);
require_once(DIR . '/psistats/database_country.php');
require_once(DIR . '/psistats/database_ip/' . $split_ip[0] . '.php');
$code = ($split_ip[0] * 16777216) + ($split_ip[1] * 65536) + ($split_ip[2] * 256) + ($split_ip[3]);
foreach($ranges as $key => $value)
{
if ($key <= $code)
{
if($value[0] >= $code)
{
$country_code = $value[1];
break;
}
}
}
if ($country_code)
{
if (is_array($database_country["$country_code"]))
{
if ($country_check = $db->query_first("SELECT * FROM " . TABLE_PREFIX . "psistats_country WHERE code = '" . $country_code . "' LIMIT 1"))
{
$db->query_write("
UPDATE " . TABLE_PREFIX . "psistats_country
SET count = count + 1
WHERE code = '" . $country_code . "'
");
}
else
{
$db->query_write("
INSERT INTO " . TABLE_PREFIX . "psistats_country
VALUES ('" . $country_code . "', 1)
");
}
}
}
// ################################################## ###########################
// Browser / OS Detection
// ################################################## ###########################
$browser = array('name' => false, 'version' => false, 'os' => false);
$useragent = strtolower($_SERVER['[فقط الأعضاء المسجلين والمفعلين يمكنهم رؤية الوصلات]']);
/************************************************** ************************************************** *******************************************
* @key string Bot Identificator
* @value string Output on Match
**/
$bots = array(
'Yahoo! Slurp' => 'Yahoo! Slurp',
'MSNBot' => 'MSN',
'Googlebot' => 'Google',
'Mediapartners-Google' => 'Google Adsense',
'Ask Jeeves' => 'Ask Jeeves',
'scooter' => 'Alta Vista',
'bot' => 'Unknown',
'crawl' => 'Unknown',
);
foreach ($bots as $ident => $output)
{
if (stristr($useragent, $ident) !== false)
{
$browser['name'] = "Bot ($output)";
}
}
/************************************************** ************************************************** *******************************************
* @key string Output on Match
* @item mixed Regular Expression
* @item mixed Pre-check for a certain string before doing regex
* @item mixed Do not fetch version
* @item mixed Symbols to strip from version string
**/
$browsers = array(
'Opera' => array('/Opera[\/ ]([0-9\.]+[u]?[\d+]?)/i', false, false, false ),
'Internet Explorer' => array('/MSIE ([0-9\.]+[b]?)/i', false, false, false ),
'Netscape' => array('/Netscape[6 ]\/([0-9\.]+)/i', false, false, false ),
'Konqueror' => array('/Konqueror\/([0-9\.]+)/i', false, false, false ),
'OmniWeb' => array('/OmniWeb\/([v]?[0-9\.]+)/i', false, false, 'v' ),
'iCab' => array('/iCab[\/ ]([0-9\.]+)/i', false, false, false ),
'Firefox' => array('/Firefox\/([0-9\.]+)/i', 'Gecko', false, false ),
'Safari' => array('/Safari\/([0-9]+)/i', 'AppleWebKit', true, false ),
'Galeon' => array('/Galeon\/([0-9\.]+)/i', false, false, false ),
'Camino' => array('/Camino\/([0-9\.]+)/i', false, false, false ),
);
if (!$browser['name'])
{
foreach ($browsers as $browsername => $data)
{
list ($regex, $precheck, $skipversion, $strip) = $data;
if (!$precheck OR stristr($useragent, $precheck) !== false)
{
if (preg_match($regex, $useragent, $matches))
{
$browser['name'] = $browsername;
if (!$skipversioncheck)
{
$browser['version'] = $matches[1];
if ($strip)
{
for ($i = 0; $i < strlen($strip); $i++)
{
$matches[1] = str_replace($strip{$i}, '', $matches[1]);
}
}
}
break;
}
}
}
}
if (!$browser['name'])
{
$browser['name'] = 'Unknown';
}
/************************************************** ************************************************** *******************************************
* @key string Output on Match
* @value string Operating System Identificator
**/
$oses = array(
'Windows XP' => array('winnt5.1', 'windows nt 5.1'),
'Windows 98' => array('win98', 'windows 98'),
'Windows 2000' => array('winnt5.0', 'windows nt 5.0'),
'Windows 2003 Server' => 'windows nt 5.2',
'Windows Vista' => 'windows nt 6.0',
'Windows NT' => array('winnt4.0', 'windows nt 4.0'),
'Windows CE' => 'windows ce',
'Windows ME' => array('windows 9x 4.90', 'windows me'),
'Mac OS X' => 'mac os x',
'Macintosh' => array('powerpc', 'macintosh'),
'Linux' => 'linux',
'Free BSD' => 'free bsd',
'Symbian' => 'symbian',
);
foreach ($oses as $os => $identificator)
{
if (is_array($identificator))
{
foreach ($identificator as $ident)
{
if (stristr($useragent, $ident) !== false)
{
$browser['os'] = $os;
break;
}
}
}
else
{
if (stristr($useragent, $identificator) !== false)
{
$browser['os'] = $os;
break;
}
}
}
if ($browser_check = $db->query_first("SELECT * FROM " . TABLE_PREFIX . "psistats_browser WHERE browser = '" . $browser['name'] . "' AND version = '" . $browser['version'] . "' LIMIT 1"))
{
$db->query_write("
UPDATE " . TABLE_PREFIX . "psistats_browser
SET count = count + 1
WHERE browser = '" . $browser['name'] . "'
AND version = '" . $browser['version'] . "'
");
}
else
{
$db->query_write("
INSERT INTO " . TABLE_PREFIX . "psistats_browser
VALUES ('" . $browser['name'] . "', '" . $browser['version'] . "', 1)
");
}
if ($browser['os'])
{
if ($os_check = $db->query_first("SELECT * FROM " . TABLE_PREFIX . "psistats_os WHERE os = '" . $browser['os'] . "' LIMIT 1"))
{
$db->query_write("
UPDATE " . TABLE_PREFIX . "psistats_os
SET count = count + 1
WHERE os = '" . $browser['os'] . "'
");
}
else
{
$db->query_write("
INSERT INTO " . TABLE_PREFIX . "psistats_os
VALUES ('" . $browser['os'] . "', 1)
");
}
}
// ################################################## ###########################
// Referrer Detection
// ################################################## ###########################
$referrerdata = parse_url($_SERVER["[فقط الأعضاء المسجلين والمفعلين يمكنهم رؤية الوصلات]"]);
if (str_replace('[فقط الأعضاء المسجلين والمفعلين يمكنهم رؤية الوصلات]', '', $_SERVER["[فقط الأعضاء المسجلين والمفعلين يمكنهم رؤية الوصلات]"]) != str_replace('[فقط الأعضاء المسجلين والمفعلين يمكنهم رؤية الوصلات]', '', $referrerdata['host']) AND trim($referrerdata['host']))
{
if ($registry->options['psistats_refcensure'])
{
foreach (explode(',', $registry->options['psistats_refcensure']) as $word)
{
if (stristr($referrerdata['host'], trim($word)) !== false)
{
$bannedurl = true;
}
}
}
if (!$bannedurl)
{
if ($referrer_check = $db->query_first("SELECT * FROM " . TABLE_PREFIX . "psistats_referrer WHERE referrer = '" . $db->escape_string($referrerdata['host']) . "' LIMIT 1"))
{
if (!$referrer_check['banned'])
{
$db->query_write("
UPDATE " . TABLE_PREFIX . "psistats_referrer
SET count = count + 1, dateline = '" . TIMENOW . "'
WHERE referrer = '" . $db->escape_string($referrerdata['host']) . "'
");
}
}
else
{
$db->query_write("
INSERT INTO " . TABLE_PREFIX . "psistats_referrer
VALUES ('" . $db->escape_string($referrerdata['host']) . "', 1, '" . TIMENOW . "', 0)
");
}
}
}
}
// ################################################## ###########################
// psiStats 2006 v1.2.0 for vBulletin 3.5.0 - Hack by Anthony Kanevsky (ankan925@optonline.net) - aka Psionic Vision - END
// ################################################## ###########################



رابعا : التعديل على القوالب
في تمبليت headinclude إبحث عن :

<if condition="defined('PSISTATS_JS')">
<script type="text/javascript">
if (window.XML[فقط الأعضاء المسجلين والمفعلين يمكنهم رؤية الوصلات])
{
req = new XML[فقط الأعضاء المسجلين والمفعلين يمكنهم رؤية الوصلات]();
}
else if(window.ActiveXObject)
{
req = new ActiveXObject("Microsoft.XMLHTTP");
}
if (typeof req == "object")
{
req.open("POST", "psistats.php", false);
req.setRequestHeader('Content-Type', 'application/x-[فقط الأعضاء المسجلين والمفعلين يمكنهم رؤية الوصلات]');
req.send("$session[sessionurl]do=update_info&width=" + self.screen.width + "&height=" + self.screen.height + "&depth=" + self.screen.colorDepth);
}
</script>
</if>



في تمبليت navbar إبحث عن :
<tr><td class="vbmenu_option"><a href="member.php?$session[sessionurl]u=$bbuserinfo[userid]">$vbphrase[my_profile]</a></td></tr>



أضف بعده :

<tr><td class="vbmenu_option"><a href="psistats.php$session[sessionurl_q]">$vbphrase[psistats_link]</a></td></tr>

جوال مرحبا
31-03-2006, 09:11 PM
شراح كافى ووافى أخوى

بس بدى أقولك فى الخطوة الرابعة وفتح التمبلت هدا headinclude

ونبحث عن الكود الى انتا واضعة شو نضع بعده أو قبله .؟؟


ولك جزيل الشكر

تحيتى لك