بحث متقدم | التسجيل
الويب العربي
  تسجيل دخول
 
   
   

  ملاحظة
الموقع متاح للإطلاع والقراءة فقط، المشاركة والمواضيع الجديدة غير متاحة حالياً لحين تطوير الموقع.




الموقع متاح للإطلاع والقراءة فقط، المشاركة والمواضيع الجديدة غير متاحة حالياً لحين تطوير الموقع.

عـودة للخلف   الويب العربي سوق البرمجة والتصميم تبادل خبرات البرمجة

تبادل خبرات البرمجة تبادل الخبرات في جميع لغات البرمجة
Php , Asp , Ajax , Xml , Css , JavaScript ...etc

موضوع مغلق اضف موضوع جديد
 
خيارات الموضوع طريقة العرض
  #1  
قديم 09-07-2005, 01:39 PM
الحاج متولى الحاج متولى غير متصل
عضو
 
تاريخ التسجيل: Apr 2005
المدينة: الســـودان
مشاركة: 344
مستوى تقييم العضوية: 19
الحاج متولى is on a distinguished road
إرسال رسالة عبر MSN إلى الحاج متولى
Talking أساسيات التعامل مع mysql من خلال الphp

الإتصال بقواعد البيانات
هناك عدد من الطرق التي تتمكن من خلالها الاتصال بقاعدة بيانات و تنفيذ عدد من الإستعلامات عليها مثل مثلا تركيب برنامج بي اتش بي ليعمل كواجهه لقاعدة بياناتك اكثر البرامج شهرة هي ..PhpMyAdmin كما توفر بعض المواقع خاصية الدخول على حسابك عن طريق التلنت telnet وذلك عن طريق الخطوات التالي..


من start>run اطبع telnet وهناك اخترconnect > remote system و ادخل عنوان موقعك و ضغط connect
ادخل كلمة المرور و اسم المستخدم الخاص بموقعك
اكتب mysql -p
اكتب use databasename حيث databasenme هو اسم قاعدة البيانات التي تريد اختيارها
اطبع الاستعلام الذي تريد

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

كود PHP:
CREATE TABLE book 




searial INT NOT NULL AUTO_INCREMENT



name text NOT NULL



author text not null



publisher text 



copy int
(4) , 



PRIMARY KEY (searial


); 
حيث طلبنا انشاء جدول اسمه book الجدول يحتوي على عدد من الحقول مثلا name و هو من نوع نص text و not null لا يمكن ان يترك فارغا ..
و Publisher من نوع نص و لكن يمكن ان يترك فارغا ...
copy من نوع رقمي و حددنا طوله باربع ارقام..
اما searial الرقم التسلسلي لكل كتاب فهو رقم int لا يمكن ان يترك فارغا و يتضاعف في كل مرة AUTO_INCREMENT بمعنى في كل مرة نضيف كتاب جديد يعطى رقم متسلسل تلقائيا ..و في النهاية حددنا الرقم التسلسلي كمفتاح اساسي primary key اي لا يمكن لا كثر من كتاب ان يكون له نفس الرقم ..



هناك عدد من الانواع للحقول.مثلا :




text وهو للنصوص الكبيرة .
bolb مشابه للسابق لكن في الحروف الانجليزية في حال استخدامه يصبح هناك فرق بين الحروف الكبيرة و الصغيرة مثلا case تحتلف عن CASE
Date للتاريخ الصيغة التلقائية هي YYYY-MM-DD
INT رقم يتراوح بين -2147483648 و 2147483648



هناك انواع اخرى مثل


"TINYINT",
"SMALLINT"
"MEDIUMINT"
"INT"
"BIGINT"
"FLOAT"
"DOUBLE"
"DECIMAL"
"DATE"
"DATETIME"
"TIMESTAMP"
"TIME"
"YEAR"
"CHAR"
"VARCHAR
"TINYBLOB"
"TINYTEXT"
"TEXT"
"BLOB"
"MEDIUMBLOB"
"MEDIUMTEXT"
"LONGBLOB"
"LONGTEXT"
"ENUM"
"SET"
و الان يمكنك وضع استعلام انشاء الجدول في التلنت او يمكنك انشاء برنامج php لهذا الغرض..


mysql و php
اولا يجب عليك الاتصال بقواعد البيانات عن طريق
كود PHP:
<? 
$db 
'اسم قاعد البيانات'// mySQL database name 
$user 'اسم المستخدم'// mySQL username 
$pw 'كلمة المرور'// mySQL password 
$mysql_access mysql_connect("localhost"$user$pw); 
mysql_select_db($db$mysql_access) or die("خلل في الإتصال"); 

?>
الان نضيف الكود اللازم لتنفيذ الاستعلام

$db = 'اسم قاعد البيانات'; // mySQL database name
$user = 'اسم المستخدم'; // mySQL username
$pw = 'كلمة المرور'; // mySQL password
$mysql_access = mysql_connect("localhost", $user, $pw);
mysql_select_db($db, $mysql_access);
نضع الاستعلام في متغيير و نسميه مثلا $sql
كود PHP:
<? 
$sql 
" CREATE TABLE book ( 
searial INT NOT NULL AUTO_INCREMENT, 
name text NOT NULL, 
author text not null, 
publisher text 
copy int(4) , 
PRIMARY KEY (searial) )"

mysql_query($sql ) or die (mysql_error); 
?>
نفذ الإستعلام السابق .. في حال تمت العملية بنجاح اكمل البرنامج و الا اظهر رسالة الخلل من خلال Mysql_error

فكرة التعامل مع قواعد البيانات تقوم على ارسال الإستعلام الذي تريد عبر متغيير باستخدام دالة معينه لتفيذ الإستعلام ..
الدالة التي تستخدم دائما لتفيذ اي استعلام هي
mysql_query

الإضافة إلى قواعد البيانات
لو اكملنا المثال السابق حول جدول الكتب.. و اردناانشاء استعلام ياخد البيانات من استمارة و يضيفها في قاعدة البيانات
الإستمارة ستحتوي على الحقول التالية : name,author,pblisher , copy


سنأخذ البيانات من هذه الإستمارة و ننسقها في استعلام محتوى في متغير باسم مثلا sql
كود PHP:
<? 
$sql 
"insert into book (name, author,publisher,copy) values ('$name','$author','$pblisher','$copy') " 
?>
و من ثم نقوم بتنفيذه من خلال الدالة
كود PHP:
<? 
mysql_query
($sql) or die (mysql_error) ; 
?>
في حال كان هناك خلل سيتعطل عمل البرنامج و يتوقف و يطبع رسالة الخطأ.. أما اذا سارت الامور على ما يرام سنكمل البرنامج ليطبع رسالة شكر..

مثلا

كود PHP:
<? 
echo "شكرا لك ..." 
?>
عرض البيانات
لعرض البيانات نستخدم الإستعلام التالي :
كود PHP:
$sql "select * from book"'; 
سيعرض جميع البيانات في قاعدة البيانات السابقة
كود PHP:
$sql "select name from book '; 
سيعرض فقط الحقل name
كود PHP:
$sql ="select * from book where author = "drnet"; 
لعرض البيانات نستخدم التالي اولا سنتصل بقاعدة البيانات
كود PHP:
 <? 
$db 
'dhname'
$user 'username'
$pw 'yourpassword'
$mysql_access mysql_connect("localhost"$user$pw); 
mysql_select_db($db$mysql_access); 
?>
ثم سننفذ الإستعلام بواسطة الدالة



$resutls = mysql_query($sql)


نتائج الإستعلام ستوضع في متسلسلة نسميها results
و من ثم سنفك هذه المتسلسلة .. في متغيير جديد نسميه $row و نعرض النتائج باستخدام حلقة
كود PHP:
<? 

loop 
while($row mysql_fetch_array($resutls ) ) 

$name$row["name"]; 
$author $row["authoer"]; 
$serial $row["serial " ] ; 
echo 
"اسم الكتاب :$name"
echo 
"المؤلف = $author"
echo 
"الرقم التسلسلي : $serial"

?>
في داخل الحلقة loop قمنا بوضع الإسم الذي نقرأه من السلسلة المفكوكة $row في متغيير اسمه name و هكذا..


تعديل قواعد البيانات

للتعديل نستخدم الإستعلام التالي ..
كود PHP:
$sql "update book set name='drnet' " 
هذا الإستعلام سيغيير كل اسماء الكتب في قاعدة البيانات إلى drnet
كود PHP:
$sql "update book set name = 'drnet ' where serial = '2' "
هذا الإستعلام سيغيير اسم الكتاب صاحب الرقم التسلسلي 2 إلى drnet


استعلام بدون نتائج

للتاكد من ان الاستعلام فارغ او يحوي نتائج نستخدم الدالة mysql_num_rows
مثلا

كود PHP:
<? 
$results 
mysql_query($sql) or die (mysql_error)) ; 
$check mysql_num_rows[$resutls); 
if (
$check ==) { 
echo 
"لايوجد نتائج "
} else { 
echo
"يوجد نتائج للبحث "

?>
نتاكد من النتائج ان كان عددها صفر فمعنا ذلك ان البحث لم يسفر عن اي نتيجة و بذلك نطبع رسالة تفيد بعدم وجود نتائج ..و الا نعرض رسالة بوجود نتائج .

حذف من قاعدة البيانات
للحذف من قاعدة البيانات نستخدم التالي
كود PHP:
$sql ="delete from book where name= 'haj' "
اي احذف السجلات التي يكون فيها اسم الكتاب haj






التوقيع
www.haj2.com
الحاج متولى للاستضافة والتصميم
من ظن انه تعلم فقد بدأ جهله وان لا خير في كاتم العلم
  #2  
قديم 10-07-2005, 06:11 AM
الرّاسم الرّاسم غير متصل
عضو
 
تاريخ التسجيل: Mar 2004
مشاركة: 1,198
مستوى تقييم العضوية: 0
الرّاسم is an unknown quantity at this point
إرسال رسالة عبر MSN إلى الرّاسم
الافتراضي

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

الف الف شكر يالغالي
مجهود طيب ودرس مهم بارك الله فيك


تحياتي






التوقيع
أبعاد المعلومات
DCIWWW

خالد العميري
  #3  
قديم 10-07-2005, 02:08 PM
الحاج متولى الحاج متولى غير متصل
عضو
 
تاريخ التسجيل: Apr 2005
المدينة: الســـودان
مشاركة: 344
مستوى تقييم العضوية: 19
الحاج متولى is on a distinguished road
إرسال رسالة عبر MSN إلى الحاج متولى
الافتراضي

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






التوقيع
www.haj2.com
الحاج متولى للاستضافة والتصميم
من ظن انه تعلم فقد بدأ جهله وان لا خير في كاتم العلم
  #4  
قديم 11-07-2005, 05:25 AM
الصورة الشخصية لـ المرسم
المرسم المرسم غير متصل
عضوية مغلقة
 
تاريخ التسجيل: Feb 2005
مشاركة: 267
مستوى تقييم العضوية: 0
المرسم is on a distinguished road
الافتراضي

الف الف شكرااا لك والله فعلا متميز ونريد سلسلة دروس منها





  #5  
قديم 23-06-2006, 03:50 AM
Illusion Illusion غير متصل
عضو
 
تاريخ التسجيل: May 2005
المدينة: مصر,,أم الدنيا
مشاركة: 459
مستوى تقييم العضوية: 19
Illusion is on a distinguished road
إرسال رسالة عبر MSN إلى Illusion إرسال رسالة عبر Yahoo إلى Illusion
الافتراضي

درس رائع اخى الحاج متولى

بارك الله فيك

ونريد ان نرى المزيد من هذه الدروس قريبا ,,





  #6  
قديم 23-06-2006, 07:13 PM
amjad_system amjad_system غير متصل
عضو
 
تاريخ التسجيل: Jun 2006
مشاركة: 3
مستوى تقييم العضوية: 0
amjad_system is on a distinguished road
الافتراضي

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





موضوع مغلق



خيارات الموضوع
طريقة العرض

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

كود vB متاح
كود [IMG] متاح
كود HTML مغلق
إنتقل إلى

مواضيع مشابهة
الموضوع الكاتب القسم مشاركة آخر مشاركة
كل ما تريده عن منتديات الphp انا موجود Tarek soliman طلبات البرمجة والتصميم والتطوير 3 02-05-2007 07:12 PM
حصريا لـ AWT : كيفية التعامل مع ال Mysql باستخدام ال Shell Ali Hamad إدارة وتشغيل السيرفرات 36 05-12-2006 02:13 PM
أساسيات التصميم وبناء موقعك آكت نت المنتدى العام 33 09-10-2006 04:56 PM
مطلوب شخص خبير في عمل وتركيب المنتديات وفي لغة الphp tarek_good شركات تعرض وظائف 3 29-09-2006 12:56 AM
أساسيات التجارة الالكترونية الرّاسم التجارة الالكترونية 12 25-07-2005 11:58 PM


جميع الأوقات بتوقيت مكة المكرمة. الساعة الآن » 12:47 AM.

Powered by vBulletin
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


 
 »  خدمات البرمجة   »  رئيسية الدليل
  »  خدمات التصميم   »  الأمن والحماية
  »  الدعاية والتسويق
  »  الدعم والتطوير
  »  الشركات الرسمية
  »  حجز دومينات
  »  خدمات الإستضافة
 
 
  »  مكتبة الإستايلات   »  رئيسية المكتبة
  »  أكواد برمجية   »  أدوات الويب ماسترز
  »  مكتبة الهاكات   »  أدوات المصممين
  »  سكربتات متنوعة
  »  مجلات إلكترونية
  »  بلوكات متنوعة
  »  ثيمات مختلفة
 
 

صحيفة متخصصة في متابعة أخبار وجديد الإنترنت العربي
والحوارات الصحفية ومعلومات تقنية متنوعة .

   
 
 

للتواصل مع فريق عمل الويب العربي
يمكنك ذالك من خلال مركز الدعم والمساندة.

 الدعم الفني |  اعتماد العضويات |  قوانين الإنتساب |  إتفاقية الإستخدام |  أهداف الويب العربي |  دليل الشركات |  مكتبة الويب |  صحيفة الويب العربي |  الرئيسية