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

الموضوع: تم بحمدلله الانتهاء من اول كلاس مفيد

  1. #1
    عضو سوبر نشيط
    تاريخ التسجيل
    Feb 2003
    المشاركات
    816

    Thumbs up تم بحمدلله الانتهاء من اول كلاس مفيد



    السلام عليكم ,,

    قد تستغربون العنوان لكن والحمدلله انتهيت من اول كلاس مفيد لي و اتمنى ان يستفيد منه الجميع , طبعا هو لقواعد البيانات .

    مميزاته :
    * يمكن استخدام نوعين من قواعد البيانات mysql او mssql
    * يظهر رساله نصيه عند وجود الاخطاء للزائر
    * امكانية ارسال تقرير عن الاخطاء

    طبعا قد يكون هناك اخطا في الكود :roll: وهو مجاني ويحق لك التعديل عليه و توزيعه كما تشاء .


    الكود :

    كود PHP:
    <?php
    /**
     * كلاس خاص للتعامل مع اكثر من نوع لقواعد البيانات
     * من اعداد و برمجة MaaSTaaR
     *
     * هذا الكود مجاني و يحق لك التعديل عليه كما تشاء
     *
     * [url]www.phpvillage.com[/url] , [url]www.vbzoom.com[/url] , [url]www.el7zn.com[/url]
    **/

    class SmartSQL {
     var 
    $host="localhost";  //كما هو
     
    var $username=""// اسم المستخدم لقاعدة البيانات
     
    var $password="";  // الكلمه السريه لقاعدة البيانات
     
    var $db="";  // اسم قاعدة البيانات
     
    var $type="mysql"// نوع القاعده التي تعمل عليها mysql او mssql
     
    var $report=1// هل تريد ان يرسل لك رساله عند حدوث خطأ في القاعده ؟
     
    var $email="mail@mail.com"// بريدك
     
    var $sender="Database Error"// اسم المرسل

     
    function sql_connect() {
      if (
    $this->type == "mysql") {
       
    $this->connect=@mysql_connect($this->host,$this->username,$this->password) or die($this->error_msg("خطأ في الاتصال"));
      }
      elseif (
    $this->type == "mssql") {
       
    $this->connect=@mssql_connect($this->host,$this->username,$this->password) or die($this->error_msg("خطأ في الاتصال"));
      }
      elseif (
    $this->type != "mysql" or $this->type != "mssql") {
       
    $this->style();
       echo 
    '<div align="center">نوع الاختيار غير موجود في الكود يجب اختيار MySQL , MsSQL</div>';
      }
     }

     function 
    sql_selectdb() {
      if (
    $this->type == "mysql") {
       
    $this->select=@mysql_select_db($this->db) or die($this->error_msg("خطأ في اختيار قاعدة البيانات"));
      }
      elseif (
    $this->type == "mssql") {
       
    $this->select=@mssql_select_db($this->db) or die($this->error_msg("خطأ في اختيار قاعدة البيانات"));
      }
      elseif (
    $this->type != "mysql" or $this->type != "mssql") {
       
    $this->style();
       echo 
    '<div align="center">نوع الاختيار غير موجود في الكود يجب اختيار MySQL , MsSQL</div>';
      }
     }

     function 
    sql_close() {
      if (
    $this->type == "mysql") {
       
    $this->close=@mysql_close() or die($this->error_msg("خطأ في اغلاق الاتصال"));
      }
      elseif (
    $this->type == "mssql") {
       
    $this->close=@mssql_close() or die($this->error_msg("خطأ في اغلاق الاتصال"));
      }
      elseif (
    $this->type != "mysql" or $this->type != "mssql") {
       
    $this->style();
       echo 
    '<div align="center">نوع الاختيار غير موجود في الكود يجب اختيار MySQL , MsSQL</div>';
      }
     }

     function 
    sql_fetch_array($query) {
      if (
    $this->type == "mysql") {
       
    $this->fetch=@mysql_fetch_array($query) or die($this->error_msg("خطأ في استخراج البيانات"));
      }
      elseif (
    $this->type == "mssql") {
       
    $this->fetch=@mssql_fetch_array($query) or die($this->error_msg("خطأ في استخراج البيانات"));
      }
      elseif (
    $this->type != "mysql" or $this->type != "mssql") {
       
    $this->style();
       echo 
    '<div align="center">نوع الاختيار غير موجود في الكود يجب اختيار MySQL , MsSQL</div>';
      }
     }

     function 
    sql_query($query) {
      if (
    $this->type == "mysql") {
       
    $this->query=@mysql_query($query) or die($this->error_msg("خطأ في الاستعلام"));
      }
      elseif (
    $this->type == "mssql") {
       
    $this->fetch=@mssql_query($query) or die($this->error_msg("خطأ في الاستعلام"));
      }
      elseif (
    $this->type != "mysql" or $this->type != "mssql") {
       
    $this->style();
       echo 
    '<div align="center">نوع الاختيار غير موجود في الكود يجب اختيار MySQL , MsSQL</div>';
      }
     }

     function 
    sql_rows_num($query) {
      if (
    $this->type == "mysql") {
       
    $this->query=@mysql_num_rows($query) or die($this->error_msg("خطأ في استخراج عدد الحقول"));
      }
      elseif (
    $this->type == "mssql") {
       
    $this->fetch=@mssql_num_rows($query) or die($this->error_msg("خطأ في استخراج عدد الحقول"));
      }
      elseif (
    $this->type != "mysql" or $this->type != "mssql") {
       
    $this->style();
       echo 
    '<div align="center">نوع الاختيار غير موجود في الكود يجب اختيار MySQL , MsSQL</div>';
      }
     }

     function 
    error_msg($msg) {
      if (
    $this->type == "mysql") {
       
    $error_no mysql_errno();
       
    $error_msg mysql_error();

       if (
    $this->report == 1) {
        
    $FROM $this->sender;
        
    $subject "خطأ في قاعدة البيانات !!";
        
    $masg "السلام عليكم و رحمة الله و بركاته ..";
        
    $masg .= '<br>';
        
    $masg .= "هذه الرساله سببها خطأ في قاعدة البيانات و سبب الخطأ هو :";
        
    $masg .= $msg;
        
    $masg .= "<br>";
        
    $masg .= "Error Number :" $error_no;
        
    $masg .= '<br>';
        
    $masg .= "Error Massage :" $error_msg;
        
    $hedr "Content-Type: text/html; charset=iso-8859-1\n";
        
    $hedr .= "From:"."$FROM\n";
        @
    mail($this->email,$subject,$masg,$hedr);
       }
      }
      elseif (
    $this->type "mssql") {
       if (
    $this->report == 1) {
        
    $FROM $this->sender;
        
    $subject "خطأ في قاعدة البيانات !!";
        
    $masg "السلام عليكم و رحمة الله و بركاته ..";
        
    $masg .= '<br>';
        
    $masg .= "هذه الرساله سببها خطأ في قاعدة البيانات و سبب الخطأ هو :";
        
    $masg .= $msg;
        
    $masg .= "<br>";
        
    $masg .= "Error Massage :" $error_msg;
        
    $hedr "Content-Type: text/html; charset=iso-8859-1\n";
        
    $hedr .= "From:"."$FROM\n";
        @
    mail($this->email,$subject,$masg,$hedr);
       }
      }

      
    $this->style();
      echo 
    "<html><head><title>خطأ في قاعدة البيانات</title><body>";
      echo 
    '<div align="center">';
      echo 
    "هناك خطأ في قاعدة البيانات و سبب هذا الخطأ : ";
      
    #echo '<br>';
      
    echo $msg;
      echo 
    '<br>';
      echo 
    '<br>';
      echo 
    "نعتذر اذا تسببنا لكم في اي ازعاج";
      echo 
    '</div>';
      exit();
     }
     function 
    style() {
      echo 
    "<style>BODY{FONT-FAMILY:tahoma;FONT-SIZE:12px;}</style>";
     }
    }
    ?>

    منتظر اقتراحاتكم و ملاحظاتكم



    تحياتي





    __________________
    http://www.el7zn.com : مدونتي :)
    MySmartBB : نظره واثقه نحو المستقبل

    You can say FireFox is also a virus that spread around the world, deleting IE
    but we all agree it's a good virus.
    MaaSTaaR غير متواجد حالياً


  2. #2
    عضو نشيط
    تاريخ التسجيل
    Nov 2003
    المشاركات
    170


    ممتــاز يا MaaSTaaR

    اصبحت انت الان انسان ذو خبره عاليه في اللغه

    تحــياتي





    One22One غير متواجد حالياً

  3. #3
    عضو نشيط
    تاريخ التسجيل
    Jun 2003
    المشاركات
    291


    رائع ....

    فيه ملاحظات بسيطه اعتقد انها بتطور الكلاس ....

    - برايي الافضل لو تعرف جميع المتغيرات بالاعلى ...

    - method ال query المنطق انها ترجع ال result و بنفس الوقت تضيفه ل fetch ... ليه ؟؟ عشان بعدين انت تشوف اذا method حقت fetch و صلها result او تاخذ $this->fetch

    اتمنى اني واضح





    [Dynamic] غير متواجد حالياً





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

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

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