×

ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود

السلام عليكم ورحمة الله وبركاتة اسعد الله مساء/ صباح اعضاء ترايدنت المحترمين حرصاً من ادارة معهد ترايدنت وادارين ومشرفين قسم لغات البرمجة على الرقي بالمبرمج

صورة '3bady' الرمزية
24
قديمة 10 - 03 - 2014, 23:11
المشاركة 1

السلام عليكم ورحمة الله وبركاتة

اسعد الله مساء/ صباح اعضاء ترايدنت المحترمين

حرصاً من ادارة معهد ترايدنت وادارين ومشرفين قسم لغات البرمجة على الرقي بالمبرمج العربي
والتقدم به كلما تقدمة التقنيه.

فمن هذا المنطلق
ساعين لنصل كل ماتعلمناه إلى كل شخص لديه الطموح ليرتقي بنفسه

ونظراً لما نشاهدة من الاعضاء المحترمين بتعاملهم مع mysql والتي تعيش ايامها الاخيرة لان تم تطويرها إلى mysqli

سنقوم في هذا الموضوع بمساعدتكم
للتخلص من mysql وتعويضها بـ mysqli

فكرة الموضع هو ان يضع العضو الكود الخاص بـ mysql والذي يتعامل معاه سوا اتصال بالقاعدة او استعلام او ادخال او تعديل او حذف

ونحن سنقوم بتحويل الكود إلى mysqli
وسنقوم بشرح تحويل الكود خطوه خطوه لكي
تتضح الفكرة في التعامل مع mysqli اكثر

كما تعلمون ان mysql هي تتعامل مع قواعد البيانات فنرجو طرح الكود الخاص بها فقط.

والاوامر هي

الاتصال بالقاعدة
الاستعلام
الادخال
التعديل
الحذف

يكتب الكود في الرد ونرجو الانتظار إلى ان يتم تحويل الكود وشرحه وسيتم طرحه في نفس الموضوع

ولكم خالص تحياتنا

bo3bdo, Ahm3d Moham3d, Dr.NeT و 4 آخرون معجبون بهذا.
استغفر الله العظيم
المشاهدات 4514 | التعليقات 27
قديمة 11 - 03 - 2014, 00:50
المشاركة 2
صورة '[سيد حسين]' الرمزية
[سيد حسين]
:: عضو نشيط ::
تاريخ الإنضمام: 21 - 01 - 2014
رقم العضوية : 230582
الدولة : iRaQ
المشاركات: 280
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
وعليكم السلام // اخي لو توضع درس التعامل مع mysqli يكون افضل .

يعني مثلاً نوع الاستعلام في الـ mysql هكذا : xxxxxxx

والنوع الجديد في الـ mysqli : شرح الاستعلام في الـ mysqli >> يكون افضل

حتى نتعلم كيفية التعامل مع mysqli ونفهم الحال ...

طيب الله انفاسك استاذنا القدير ..

اخوك سيد حسين
bo3bdo معجب بهذا.
معهد عربي نت || استضافة عربي نت || للتواصل:07717915952

بريد الرسمي للشركة: [email protected]
قديمة 11 - 03 - 2014, 01:15
المشاركة 3
صورة '3bady' الرمزية
3bady
:: عضو نشيط ::
تاريخ الإنضمام: 23 - 08 - 2009
رقم العضوية : 70021
العمر: 34
المشاركات: 1,818
24
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
وعليكم السلام // اخي لو توضع درس التعامل مع mysqli يكون افضل .

يعني مثلاً نوع الاستعلام في الـ mysql هكذا : xxxxxxx

والنوع الجديد في الـ mysqli : شرح الاستعلام في الـ mysqli >> يكون افضل

حتى نتعلم كيفية التعامل مع mysqli ونفهم الحال ...

طيب الله انفاسك استاذنا القدير ..

اخوك سيد حسين
اهلا اخوي بالنسبه للدروس سنسعى أن شاء اللھَہّ لطرحها
مع ان الدروس موجودة وهذ احد الدروس

https://www.traidnt.net/vb/traidnt2213143/

ومازال هناك صعوبه على الاعضاء للتعامل معاها او فهمها
والموضوع هذا تم انشاءه لكي نقوم بشرح كود العضو نفسه
لي يقارن بين كوده الحالي وكودة بعد التعديل عليه ليفهم اكثر ويستطيع استيعابها بسرعه
bo3bdo و [سيد حسين] معجبون بهذا .
استغفر الله العظيم
قديمة 11 - 03 - 2014, 17:03
المشاركة 4
صورة '[سيد حسين]' الرمزية
[سيد حسين]
:: عضو نشيط ::
تاريخ الإنضمام: 21 - 01 - 2014
رقم العضوية : 230582
الدولة : iRaQ
المشاركات: 280
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
اهلا اخوي بالنسبه للدروس سنسعى أن شاء اللھَہّ لطرحها
مع ان الدروس موجودة وهذ احد الدروس

https://www.traidnt.net/vb/traidnt2213143/

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

تحياتي
معهد عربي نت || استضافة عربي نت || للتواصل:07717915952

بريد الرسمي للشركة: [email protected]
قديمة 22 - 03 - 2014, 04:04
المشاركة 5
صورة 'Pa!n ~' الرمزية
Pa!n ~
:: عضو نشيط ::
تاريخ الإنضمام: 22 - 10 - 2005
رقم العضوية : 10602
العمر: 40
المشاركات: 268
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
موضوع مفيد ومهم للجميع ,

ماقصرت يابعدي ,

"مساعد مشرف" تستاهل وأكثر بعد ’,

بالتوفيق ,
3bady معجب بهذا.


( علمني إنْ لم تتعلم مِنّـي )
قديمة 22 - 03 - 2014, 10:05
المشاركة 6
صورة 'ABDULLAH.Q' الرمزية
ABDULLAH.Q
:: عضو نشيط ::
تاريخ الإنضمام: 01 - 10 - 2013
رقم العضوية : 217795
المشاركات: 466
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
عندي ملف mysql خآص ..

تقدر تعطيني الاسكيبي تبعك حتى ارسله لك ؟
Php - Mysql - Html - Css - Javascript
قديمة 22 - 03 - 2014, 11:39
المشاركة 7
صورة '3bady' الرمزية
3bady
:: عضو نشيط ::
تاريخ الإنضمام: 23 - 08 - 2009
رقم العضوية : 70021
العمر: 34
المشاركات: 1,818
24
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
عندي ملف mysql خآص ..

تقدر تعطيني الاسكيبي تبعك حتى ارسله لك ؟
بما ان الملف خاص لاتضعه هنا
ارفق كود الاتصال او الاستعلام او التعديل او الحذف بالاصح اوامر mysql

هدف الموضوع يالغالي تعليمي بنشرح لك خطوه خطوه كيف تم تحويل الكود
لتستطيع انت بنفسك مستقبلاً بتحويل اكوادك دون مساعدة اي شخص

انا بمكاني اخذ الملف منك وحوله واعطيك لكن وش بتستفيد انت انا ودي ان اعلمك قبل اخدمك
اتمنا فهمتني
bo3bdo و oliivia معجبون بهذا .
استغفر الله العظيم
قديمة 27 - 03 - 2014, 02:46
المشاركة 8
Dragon_for_ever
:: عضو فعال ::
تاريخ الإنضمام: 07 - 02 - 2012
رقم العضوية : 111660
المشاركات: 199
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
ارجو تحويل هذا الكود

رمز PHP:
<?php

class sql {
    public function 
query($data){
        
$sql mysql_query($data) or die(mysql_error());
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysql_error());
            return 
false;
        }
    }
    public function 
fetch_array($data){
        
$sql mysql_fetch_array($data);
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysql_error());
            return 
false;
        }
    }
    public function 
fetch_assoc($data){
        
$sql mysql_fetch_assoc($data);
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysql_error());
            return 
false;
        }
    }
    public function 
fetch_object($data){
        
$sql mysql_fetch_object($data);
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysql_error());
            return 
false;
        }
    }
    public function 
num_rows($data){  
        
$sql mysql_num_rows($data);
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysql_error());
            return 
false;
        }
    }
}

class 
mysql extends sql {
    public function 
select($table,$where false){
        return 
$this -> query("SELECT * FROM ".$table.' '.$where);
    }
    public function 
insert($table,$val,$var){
        return 
$this -> query("INSERT INTO ".$table." (".$val.") VALUES (".$var.")");
    }
    public function 
update($table,$val,$where false){
        return 
$this -> query("UPDATE ".$table." SET ".$val." ".$where."");
    }
    public function 
delete($table,$where){
        return 
$this -> query("DELETE FROM ".$table.' '.$where);
    }
}

$Mysql = new mysql;
?>
ملف الاتصال

رمز PHP:
<?php

$DB_HOST 
"localhost";

$DB_NAME "";

$DB_USER "";

$DB_PASS "";
    



class 
con_sql {

    private 
$dbhost$dbuser$dbpass;

    public function 
__construct ($host,$user,$pass) {
    
$this->dbhost $host;
    
$this->dbuser $user;
    
$this->dbpass $pass;
    }

    public function 
con () {
        @
mysql_connect($this->dbhost,$this->dbuser,$this->dbpass) or die
        (
"خطأ في الاتصال .. تأكد من بيانات الدخول .");
    }

    public function 
selectdb ($data) {
        @
mysql_select_db($data) or die ("خطأ في إختيار قاعدة البيانات .. تأكد من ادخال الاسم بشطل صحيح .");
    }
}
$con = new con_sql($DB_HOST,$DB_USER,$DB_PASS);
$con->con();
$con->selectdb($DB_NAME);

?>
3bady معجب بهذا.
قديمة 27 - 03 - 2014, 03:03
المشاركة 9
صورة 'kmhome' الرمزية
kmhome
:: عضو جديد ::
تاريخ الإنضمام: 24 - 01 - 2013
رقم العضوية : 181912
العمر: 32
المشاركات: 21
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
قديمة 27 - 03 - 2014, 10:36
المشاركة 10
صورة '3bady' الرمزية
3bady
:: عضو نشيط ::
تاريخ الإنضمام: 23 - 08 - 2009
رقم العضوية : 70021
العمر: 34
المشاركات: 1,818
24
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
هلا اخوي Dragon_for_ever

تفضل هذا كلاس المخاطبة مع القاعدة

رمز PHP:

class sql {
    public function 
query($querycon ,$data){ 
        
$sql mysqli_query($querycon ,$data) or die(mysqli_error());
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysqli_error());
            return 
false;
        }
    }
    public function 
fetch_array($data){
        
$sql mysqli_fetch_array($data);
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysqli_error());
            return 
false;
        }
    }
    public function 
fetch_assoc($data){
        
$sql mysqli_fetch_assoc($data);
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysqli_error());
            return 
false;
        }
    }
    public function 
fetch_object($data){
        
$sql mysqli_fetch_object($data);
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysqli_error());
            return 
false;
        }
    }
    public function 
num_rows($data){  
        
$sql mysqli_num_rows($data);
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysqli_error());
            return 
false;
}
}
}
class 
mysql extends sql {
    public function 
select($conct $table,$where false){
        return 
$this->query($conct"SELECT * FROM ".$table.' '.$where);
    }
    public function 
insert($conct $table,$val,$var){
        return 
$this->query($conct"INSERT INTO ".$table." (".$val.") VALUES (".$var.")");
    }
    public function 
update($conct $table,$val,$where false){
        return 
$this->query($conct"UPDATE ".$table." SET ".$val." ".$where."");
    }
    public function 
delete($conct $table,$where){
        return 
$this->query($conct"DELETE FROM ".$table.' '.$where);
    }
}

$Mysql = new mysql;
$Mysql->select($con'tablename'); 
قمت بتحويل الدوال واضفت لها حرف i لتصبح mysqli
mysqli_quer
mysqli_error
mysqli_fetch_asso
mysqli_fetch_object
mysqli_num_rows

طبعا mysqli هي نوعان بنية كلاس جاهز وهو mysqli والبرمجة الاعتيادية
عشان انت تستخدم كلاس ومخاطبة قمت بتحويل كودك لـ mysqli بالبرمجة الاعتيادية

قمنت في الفانكشن التالي
رمز PHP:
    public function query($querycon ,$data){ 
        
$sql mysqli_query($querycon ,$data) or die(mysqli_error());
        if(isset(
$sql)){
            return 
$sql;
        }else{
            die(
mysqli_error());
            return 
false;
        }
    } 
باضافة بارمتر $querycon لان mysqli يجب اضافة متغير الاتصال داخل الاستعلام
قبل
رمز PHP:
mysql_query("select * from tablename"); 
لكن mysqli يصير
رمز PHP:
mysqli_query($con "select * from tablename"); 
بحيث $con هو متغير الاتصال بالقاعدة
اتمنا اتضح التغير

اكمل

رمز PHP:
class mysql extends sql {
    public function 
select($conct $table,$where false){
        return 
$this->query($conct"SELECT * FROM ".$table.' '.$where);
    }
    public function 
insert($conct $table,$val,$var){
        return 
$this->query($conct"INSERT INTO ".$table." (".$val.") VALUES (".$var.")");
    }
    public function 
update($conct $table,$val,$where false){
        return 
$this->query($conct"UPDATE ".$table." SET ".$val." ".$where."");
    }
    public function 
delete($conct $table,$where){
        return 
$this->query($conct"DELETE FROM ".$table.' '.$where);
    }

الكلاس التالي قمت باضافة بارمتر $conct وهو إللي سيحل مكانة متغير الاتصال
واضفتة داخل فانكشن الاستعلام
رمز PHP:
return $this->query($conct"SELECT * FROM ".$table.' '.$where); 
وكذالك مع insert وال update إلى الخ...

طيب الان طريقة الاستخدام
اول كنت تستخدم عند الاستعلام او تشغيل الكلاسك
بالشكل التالي

رمز PHP:
$Mysql = new mysql;
$Mysql->select('tablename'); 
لكن الان صار عندنا متغير
رمز PHP:
$Mysql = new mysql;
$Mysql->select($con'tablename'); 
وهو متغير الاتصال بالقاعدة مثال

رمز PHP:
<?php
$DB_HOST 
"localhost";
$DB_USER "root";
$DB_PASS "123";
$DB_NAME "dbnews";

    
$con mysqli_connect($DB_HOST,$DB_USER,$DB_PASS,$DB_NAME) or die
    (
"خطأ في الاتصال .. تأكد من بيانات الدخول .");
?>
اتمنا اتضحت الفكرة
--------------------------------------------------------------------
ملف الاتصال

رمز PHP:
<?php
$DB_HOST 
"localhost";
$DB_USER "root";
$DB_PASS "123";
$DB_NAME "dbnews";
class 
con_sql {
    private 
$dbhost$dbuser$dbpass$dbname;
    public function 
__construct ($host,$user,$pass,$dbn) {
    
$this->dbhost $host;
    
$this->dbuser $user;
    
$this->dbpass $pass;
    
$this->dbname $dbn;
    }
    public function 
con() {
    
$re mysqli_connect($this->dbhost,$this->dbuser,$this->dbpass,$this->dbname) or die
        (
"خطأ في الاتصال .. تأكد من بيانات الدخول .");
    return 
$re;
    }  
   
}
$con = new con_sql($DB_HOST,$DB_USER,$DB_PASS,$DB_NAME);
$startconnect $con->con();
?>
ملف الاتصال مهم لكي تتخاطب معاه

اولا قمت باضافة بارمتر $dbname لاسم القاعدة ووضعتة داخل دالة الاتصال باسم $dbn
+ تعريفة
رمز PHP:
 public function __construct ($host,$user,$pass,$dbn) {
    
$this->dbhost $host;
    
$this->dbuser $user;
    
$this->dbpass $pass;
    
$this->dbname $dbn;
    } 
ووضعتة داخل دالة
رمز PHP:
    public function con() {
    
$re mysqli_connect($this->dbhost,$this->dbuser,$this->dbpass,$this->dbname) or die
        (
"خطأ في الاتصال .. تأكد من بيانات الدخول .");
    return 
$re;
    } 
لكي يتم الاتصال بالقاعدة
وحذفة دالة اختيار قاعدة البيانات لانها إلغت في mysqli

رمز PHP:
    public function selectdb ($data) {
        @
mysql_select_db($data) or die ("خطأ في إختيار قاعدة البيانات .. تأكد من ادخال الاسم بشطل صحيح .");
    } 
الان التشغيل
قمت بتشغيل الكلاس بـ 4 برمترات
رمز PHP:
$con = new con_sql($DB_HOST,$DB_USER,$DB_PASS,$DB_NAME); 
واخر بارمتر هو اسم القاعدة

وقمت بوضع متغير
رمز PHP:
$startconnect 
وقلت له يساوي
دالة الاتصال
رمز PHP:
$startconnect $con->con(); 
طيب الان اهم شي عندنا المتغير التالي
رمز PHP:
$startconnect 
هو إللي راح نستخدمة في كلاس المخاطبة مثال

رمز PHP:
$Mysql = new mysql;
$q $Mysql->select($startconnect'news');
echo 
$num $Mysql->num_rows($q); 
لحظة وين وضعت متغير $startconnect داخل الاستعلام اللي شرحته اعلى
المهم
قمت بتشغيل الكلاس
رمز PHP:
$Mysql = new mysql
ثم عملة متغير $q واستدعيت الفانكشن إللي داخل الكلاس من نوع استعلام
رمز PHP:
$q $Mysql->select($startconnect'news'); 
وقلت له يحسب لي عدد الحقول
رمز PHP:
echo $num $Mysql->num_rows($q); 
طبعا الداول إللي في الكلاس تعرفها انت

بكذا ايكون انتهى التحويل واي استفسار تحت امرك
Dragon_for_ever و فراس درويش معجبون بهذا .
استغفر الله العظيم
قديمة 27 - 03 - 2014, 16:22
المشاركة 11
Dragon_for_ever
:: عضو فعال ::
تاريخ الإنضمام: 07 - 02 - 2012
رقم العضوية : 111660
المشاركات: 199
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
ماشاء الله الشرح واضح
جزاك الله خيرا

لكن عند تشغيله

يظهر هذه الاخطاء


رمز PHP:
Warningmysqli_query() expects parameter 1 to be mysqliobject given in C:\wamp\www\article\class\mysql.class.php on line 5 
رمز PHP:
Warningmysqli_error() expects exactly 1 parameter0 given in C:\wamp\www\article\class\mysql.class.php on line 5 
قديمة 27 - 03 - 2014, 16:28
المشاركة 12
صورة '3bady' الرمزية
3bady
:: عضو نشيط ::
تاريخ الإنضمام: 23 - 08 - 2009
رقم العضوية : 70021
العمر: 34
المشاركات: 1,818
24
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
ماشاء الله الشرح واضح
جزاك الله خيرا

لكن عند تشغيله

يظهر هذه الاخطاء


رمز PHP:
Warningmysqli_query() expects parameter 1 to be mysqliobject given in C:\wamp\www\article\class\mysql.class.php on line 5 
رمز PHP:
Warningmysqli_error() expects exactly 1 parameter0 given in C:\wamp\www\article\class\mysql.class.php on line 5 
تاكد ان مسار الانكلود صحيح + المتغير $startconnect إللي شغلت به دالة الاتصال صحيح
رمز PHP:
$Mysql->select($startconnect'news'); 
لان هذا الخطأ يظهر ان دالة mysqli_query ناقصها بارمتر الاتصال والكود شغال معاي تمام
Dragon_for_ever و فراس درويش معجبون بهذا .
استغفر الله العظيم
قديمة 27 - 03 - 2014, 17:01
المشاركة 13
Dragon_for_ever
:: عضو فعال ::
تاريخ الإنضمام: 07 - 02 - 2012
رقم العضوية : 111660
المشاركات: 199
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
لم يتغير شيئ اذا اردت سارسل لك السكربت لتعاين المشكلة
قديمة 27 - 03 - 2014, 17:07
المشاركة 14
صورة '3bady' الرمزية
3bady
:: عضو نشيط ::
تاريخ الإنضمام: 23 - 08 - 2009
رقم العضوية : 70021
العمر: 34
المشاركات: 1,818
24
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
لم يتغير شيئ اذا اردت سارسل لك السكربت لتعاين المشكلة

رفعت لك مثال مع القاعدة + قمت بتعديل بسيط للكود
جربة مرفقة الملفات
الملفات المرفقة
نوع الملف : zip smp.zip (2.0 كيلوبايت, عدد مرات المشاهدة 19 مرة)
Dragon_for_ever معجب بهذا.
استغفر الله العظيم
قديمة 27 - 03 - 2014, 17:18
المشاركة 15
Dragon_for_ever
:: عضو فعال ::
تاريخ الإنضمام: 07 - 02 - 2012
رقم العضوية : 111660
المشاركات: 199
افتراضي رد : ضع كودك mysql ونحن سنقوم بتحويلة إلى mysqli وسنقوم بشرح التحويل لكي تفهم الكود
شكرا لك على المتابعة

وجزاك الله الف خير
 
اضافة رد
 

مدرسة الويب العربي |html| الأوسمة الأساسية دورة HTML5 شرح HTML5 دروس HTML5 | الدرس الأول

أدوات الموضوع ابحث في الموضوع
ابحث في الموضوع:

البحث المتقدم
طرق العرض


الساعة معتمدة بتوقيت جرينتش +3 . الساعة الآن : 19:10.
المعهد غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي معهد ترايدنت ولا نتحمل أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

جميع الحقوق محفوظة Traidnt 2019
  • 00966138651070
  • 00966138648289
  • 2051033691
Powered by vBulletin® Version 3.8.11 .Copyright ©2000 - 2020, Jelsoft Enterprises Ltd
SEO by vBSEO ©2011, Crawlability, Inc.