النتائج 1 إلى 3 من 3

الموضوع: كلاس : لحساب عدد زوار موقعك بالايبي و كذلك احصائيات زوار اليوم و الشهر و العام

  1. #1
    عضو نشيط
    تاريخ التسجيل
    Jan 2008
    المشاركات
    97

    كلاس : لحساب عدد زوار موقعك بالايبي و كذلك احصائيات زوار اليوم و الشهر و العام



    بسم الله الرحمن الرحيم

    وددت ان اعرض عليكم كلاس من برمجتى بالكامل لحساب عدد زوار موقعك بالايبي و كذلك احصائيات زوار اليوم و الشهر و العام و فكرته بسيطة جدا و مفيدة للمبتدئين امثالى بلغة php و ساشرحها لكم بالتفصيل على الكود

    اولا : قم بتنفيذ هذا الامر لقاعدة البيانات و هو يمثل انشاء جدول يحوى ايبي الزائر و يوم و شهر و سنة و وقت دخوله للموقع الخاص بك كما يلي :

    كود:
    -----------------------------------------------------------------------------+
    | Table   | Create Table                                                              |
    +---------+------------------------------------------------------------------
    ------------------------------------------------------------------------------
    ------------------------------------------------------------------------------
    -----------------------------------------------------------------------------+
    | counter | CREATE TABLE `counter` (
      `id` int(11) NOT NULL auto_increment,
      `ip` varchar(100) default NULL,
      `day` int(11) default NULL,
      `month` int(11) default NULL,
      `year` year(4) default NULL,
      `time` varchar(100) default NULL,
      PRIMARY KEY  (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8  |
    +---------+------------------------------------------------------------------
    ------------------------------------------------------------------------------
    ------------------------------------------------------------------------------
    -----------------------------------------------------------------------------+
    ثانيا : الكلاس و شرحه موجود داخل اسطر الكلاس و يجب عليك ان تعدل بينات قاعدة البيانات الخاصة بك اولا قبل البدء فى تشغيله و سم الملف : count.class.php

    كود PHP:

    <?php

    /**
     *
     * كلاس متقدم لحساب الزوار و الزيارات و احصائياتهما
     *
     * يقوم هذا الكلاس بحساب عدد زوار موقعك من خلال الايبي الخاص بهم 
     * و كذلك يقوم باستخراج احصائيات كاملة عنهم .
     *
     * @المبرمج    عبدالله محمد ضياء الدين
     * @الاصدارة   0,01 بيتا
     * @الترخيص  مجانى
     * @القسم   عداد زوار
     * @مثال   example.php
     * @أنشئ     17/5/2008 يوم السبت
     **/


    class counter
    {

        
    /**
         * المعلومات الخاصة بالاتصال بقاعدة البيانات.
         *
         * @vars     string
         * @access  private
         **/
        
    var $db_HOST "localhost"//ادخل المستضيف
        
    var $db_USER "root"// ادخل اسم المستخدم لقاعدة البيانات
        
    var $db_PASS ""// الرقم السري لقاعدة البيانات
        
    var $db "counter"//اسم قاعدة البيانات
        
    var $dbc;


        
    /**
         * جلب أيبي الزائر
         *
         * @vars     string
         * @access  private
         **/
        
    var $ip;


        
    /**
         * جلب اليوم
         *
         * @vars     string
         * @access  public
         **/
        
    var $day;


        
    /**
         * جلب السنة
         *
         * @vars     string
         * @access  public
         **/
        
    var $year;


        
    /**
         * جلب الشهر
         *
         * @vars     string
         * @access  public
         **/
        
    var $month;


        
    /**
         * جلب الوقت
         *
         * @vars     string
         * @access  public
         **/
        
    var $time;


        
    ///////////////////////////////////////////////////////////////////
        /**
         * Constructor
         * دالة البناء للكلاس
         * @access  public
         **/
        
    function counter()
        {
            
    $this->ip getenv('REMOTE_ADDR');
            
    $this->day date('d');
            
    $this->month date('m');
            
    $this->year date('Y');
            
    $this->time time();
            
    // استدعاء لدالة الاتصال بقاعدة البيانات
            
    $this->connect_db();
        }
        
    ///////////////////////////////////////////////////////////////////
        /**
         * دالة الاتصال بقاعدة البيانات
         *
         * @access  private
         **/
        
    function connect_db()
        {
            
    $this->dbc = @mysql_connect($this->db_HOST$this->db_USER$this->db_PASS) or
                die(
    "open <b>count.class.php</b> and edit your database informaion ");
            
    $m = @mysql_select_db($this->db$this->dbc);
            return (
    $dbc);
        }
        
    ///////////////////////////////////////////////////////////////////
        /**
         * دالة للتحقق من ايبي الزائر و ادخال بياناته لقاعدة البيانات ليتم حسابها
         *
         * @access  public
         **/
        
    function check_insert()
        {
            
    //البحث داخل قادة البيانات للتاكد من ان اىبي الزائر لم يدخل مسبقا طوال هذا اليوم
            
    $query "select * from counter;";
            
    $result mysql_query($query$this->dbc);
            
    $num mysql_num_rows($result);
            
    $check "select * from counter where ip='$this->ip' and day ='$this->day' and month='$this->month' and year='$this->year';";
            
    $result2 mysql_query($check$this->dbc);
            
    $num2 mysql_num_rows($result2);
            
    //ان كانت بيانات الزائر موجودة من قبل اغلق الاتصال بالقاعدة
            
    if ($num2 != 0)
            {
                
    mysql_close($this->dbc);
                exit();
            }
            
    //ادخال بينات الزائر كاملة لقاعدة البيانات
            
    $insert "insert into counter (ip,day,month,year,time) values('$this->ip','$this->day','$this->month','$this->year','$this->time')";
            
    mysql_query($insert$this->dbc);
        }
        
    ///////////////////////////////////////////////////////////////////
        /**
         * دالة لحساب اجمالة زوار موقعك عن طريق الايبي الخاص بكل شخص
         *
         * @access  public
         **/
        
    function all_visit()
        {
            
    //اختيار الايبيهات المختلفة بقاعدة البيانات و حساب عددها
            
    $select "SELECT DISTINCT * FROM counter GROUP BY ip;";
            
    $result mysql_query($select$this->dbc);
            echo 
    mysql_num_rows($result);
        }
        
    ///////////////////////////////////////////////////////////////////
        /**
         * دالة لحساب اجمالى زوار موقعك هذا اليوم
         *
         * @access  public
         **/
        
    function visit_today()
        {
            
    //اختيار الصفوف التى تطابق تاريخ اليوم
            
    $select "select * from counter where day ='$this->day' and month='$this->month' and year='$this->year'";
            
    $result mysql_query($select$this->dbc);
            echo 
    mysql_num_rows($result);
        }
        
    ///////////////////////////////////////////////////////////////////
        /**
         * دالة لحساب احمالى زوار موقعك هذا الشهر
         *
         * @access  public
         **/
        
    function visit_month()
        {
            
    //اختيار الصفوف التى تطابق هذا الشهر و العام و مختلفة الايبي
            
    $select "select DISTINCT * from counter where month ='$this->month' and year='$this->year' GROUP BY ip;";
            
    $result mysql_query($select$this->dbc);
            echo 
    mysql_num_rows($result);
        }
        
    ///////////////////////////////////////////////////////////////////
        /**
         * دالة لحساب اجمالى زوار موقعك هذا العام
         *
         * @access  public
         **/
        
    function visit_year()
        {
            
    //اختيار الصفوف التى تطابق العام و مختلفة الايبي
            
    $select "select DISTINCT * from counter where year ='$this->year' GROUP BY ip;";
            
    $result mysql_query($select$this->dbc);
            echo 
    mysql_num_rows($result);
        }
        
    ///////////////////////////////////////////////////////////////////
        /**
         * دالة لحساب اجمالى زياراتك للموقع
         *
         * @access  public
         **/
        
    function visit_u()
        {
            
    //اختيار كافة الصفوف التى تحوى الايبي الخاص بالزائر
            
    $select "select * from counter where ip ='$this->ip'";
            
    $result mysql_query($select$this->dbc);
            echo 
    mysql_num_rows($result);
        }
        
    ///////////////////////////////////////////////////////////////////
        /**
         * دالة لاغلاق الاتصال بقاعدة البيانات بعد تنفيذ الاستعلامات بالاعلى
         *
         * @access  public
         **/
        
    function close_db()
        {
            
    //اغلاق الاتصال بقاعدة البيانات
            
    $this->dbc mysql_close($this->dbc);
        }
    }


    ?>
    ثالثا طريقة الاستعمال كما هو موضح بالكود التالى :

    كود PHP:
    <?php
    //استدعاء كلاس الخاص بعداد الزوار
    require_once('count.class.php');
    // ادخال الكلاس داخل المتغير count
    $count = new counter ;
    // حساب اى من عدد الزوار فى اى وقت
    echo "<html dir='rtl' encoding='windows-1256'>";
    echo 
    "<b>اجمالى الزوار</b> : ";
    $count->all_visit();
    echo 
    "<br /><b>زوار اليوم</b> : ";
    $count->visit_today();
    echo 
    "<br /><b>عدد زوار الشهر</b> : ";
    $count->visit_month();
    echo 
    "<br /><b>عدد زوار السنة</b> : ";
    $count->visit_year();
    echo 
    "<br /><b>عدد زياراتك</b> : ";
    $count->visit_u();
    echo 
    "</html>";
    // عمل فحص للقاعدة و ادخال بيانات الزائر
    // ******* يجب ان يكون استدعاء هذه الدالة بعد الاحصائيات  و ليس قبلها
    $count->check_insert();
    // اغلاق الاتصال بقاعدة البيانات
    $count->close_db();
    ?>
    و الكلاس بالكامل مع المثال مرفق مع الموضوع
    فى امان الرحمن





    الملفات المرفقة الملفات المرفقة
    التعديل الأخير تم بواسطة drabdalla ; 18-05-2008 الساعة 12:56 PM


  2. #2
    عضو سوبر نشيط
    تاريخ التسجيل
    Jun 2005
    المشاركات
    813


    اولا تسلم الايادى - وبارك الله فيك - ثم جعلها الله فى ميزان حسناتك

    سؤال : لو تكرمت طريقة التركيب يعنى انا هرفع الملفات عادى طيب اية الكود الى هحطة فى الصفحة علشان يعرض عدد زوار اليوم والشهر والعام ؟





    __________________
    تم بيع موقع العاب القبطان عزوز
    http://www.gamesazouz.com

  3. #3
    عضو نشيط
    تاريخ التسجيل
    Jan 2008
    المشاركات
    97


    هذا هو الكود الذى تضعه فى الصفحة اخى الكريم لعرض كل البيانات و كذلك حساب دخول الزائر
    كود PHP:
       <?php
    //استدعاء كلاس الخاص بعداد الزوار
    require_once('count.class.php');
    // ادخال الكلاس داخل المتغير count
    $count = new counter ;
    // حساب اى من عدد الزوار فى اى وقت
    echo "<html dir='rtl' encoding='windows-1256'>";
    echo 
    "<b>اجمالى الزوار</b> : ";
    $count->all_visit();
    echo 
    "<br /><b>زوار اليوم</b> : ";
    $count->visit_today();
    echo 
    "<br /><b>عدد زوار الشهر</b> : ";
    $count->visit_month();
    echo 
    "<br /><b>عدد زوار السنة</b> : ";
    $count->visit_year();
    echo 
    "<br /><b>عدد زياراتك</b> : ";
    $count->visit_u();
    echo 
    "</html>";
    // عمل فحص للقاعدة و ادخال بيانات الزائر
    // ******* يجب ان يكون استدعاء هذه الدالة بعد الاحصائيات  و ليس قبلها
    $count->check_insert();
    // اغلاق الاتصال بقاعدة البيانات
    $count->close_db();
    ?>
    و الكود الذى تضعه بالصفحة او بالفوتر لحساب الزوار فقط

    كود PHP:
       <?php
    //استدعاء كلاس الخاص بعداد الزوار
    require_once('count.class.php');
    // ادخال الكلاس داخل المتغير count
    $count = new counter ;
    $count->check_insert();
    // اغلاق الاتصال بقاعدة البيانات
    $count->close_db();
    ?>











ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض