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

عرض الإصدار الكامل : بدايتك مع قواعد البيانات mysql


MSHAER
09-13-2008, 02:44 PM
بدايتك مع قواعد البيانات mysql

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

لنبدأ على بركة الله






SELECT -----------------> اختيار
INSERT -----------------> ادخال
UPDATE ----------------->تحديث
DELETE -----------------> مسح او حذف

اوامر اخرى ..........


CREATE TABLE -----------------> إنشاء جدول
DROP TAPLE -----------------> حذف جدول
GRANT ------------> مخصص للصلاحيات للجدول
الأوامر الخاصه بقواعد البيانات mysql كثيره ولكن سنذكر منها ماهو متكرر الاستخدام


الأمر الأول وهو طريقة الاتصال بالقاعده باستخدام معلومات اسم القاعده ويوزر القاعده وباسوورده واسم السيرفر الخادم

الداله الاكثر شيوعا هي الداله
mysql_connect();<?php
$dbhost ="localhost";
//اسم السيرفر اتركه كما هو اغلب الخوادم تتركه هكذا
$dbusername ="user_root";
// اسم مستخدم القاعده
$dbpassword="1111";
// باسوورد مستخدم القاعده
$dblinkid = mysql_connect($dbhost, $dbusername, $dbpassword);
?>الآن لنقم باختيار قاعدة البيانات
لاختيار قاعده نستخدم mysql_select_db();<?php
$dbname ="mshaer_dbname";
//اسم قاعدة البيانات
$checkdb=mysql_select_db($dbname);

//لنتحقق من الاتصال الان
if($checkdb)
{

print "تم الاتصال";
}else{
print "لم يتم الاتصال";

print "رسالة الخطأ هي : <br /> ";
mysql_error();

}
?>###################################

الآن سنستخدم الأوامر الخاصه بالزراعة والاستعراض والتحديث والحذف مع مثال لكل نوع وبتفاصيل اكثر بإذنا الله

لانشاء جدول وللتوضيح اتبع الرابط التالي






الأمر INSERT وهو الأمر الخاص بأدخال البيانات للقاعده
مثال

<?php

$mshaer_insert =mysql_query("INSERT INTO `table_name` SET
`user_name`='mshaer',`password`='1111' ");

if($mshaer_insert)
{
print "تمت العملية بنجاح";
}
else
{
print "لم تتم العملية يوجد خطأ";
}
?>
اما لورغبنا استقبال النتائج من فورم معين كفورم اضافة موضوع

<?php
$user_nam=$_POST[user_nam];
$password=$_POST[password];
//أو عند استخدام الطريقة GET
$user_nam=$_GET[user_nam];
$password=$_GET[password];

$mshaer_insert=mysql_query("INSERT INTO `table_name` SET
`user_name`='$user_name',`password`='$password' ");

if($mshaer_insert)
{
print "تمت العملية بنجاح";
}
else
{
print "لم تتم العملية يوجد خطأ";
}
?>
الأمر UPDATE وهو خاص بتحديث سجل في قاعدة البيانات



<?php
$user_nam=$_POST[user_nam];
$password=$_POST[password];
$id_username=$_POST[id_username];
//أو عند استخدام الطريقة GET
$user_nam=$_GET[user_nam];
$password=$_GET[password];
$id_username=$_GET[id_username];
$mshaer_update =mysql_query("UPDATE `table_name` SET
`user_name`='$user_name',`password`='$password'
WHERE `id_username`='$id_username' ");

if($mshaer_update)
{
print "تمت العملية بنجاح";
}
else
{
print "لم تتم العملية يوجد خطأ";
}
?>
ركز معي وشوف امر جديد انضاف في نهاية الاستعلام وهو

WHEREومعناه بشرط أن

ومعنى
<?php
WHERE `id_username`='$id_username'
?>بشرط أن id_username مساوي تماما لقيمة $id_username التي جلبناها بطريقة POST أو GETالأمر SELECT<?php
$mshaer_select =mysql_query=("SELECT * FROM `table_name` ");

if($mshaer_select)
{
print "تمت العملية بنجاح";
}
else
{
print "لم تتم العملية يوجد خطأ";
}
?>
لنستخدم شروط اضافيه مثلا بشرط ان الباسوورد المجلوب مطابق للباسوورد المسجل في قاعدة البيانات

<?php
$password=$_POST[password];
$mshaer_select =mysql_query=("SELECT * FROM `table_name` WHERE `password`='$password'");

if($mshaer_select)
{
print "تمت العملية بنجاح";
}
else
{
print "لم تتم العملية يوجد خطأ";
}
?>الآن نريد التعقيد أكثر من شرط

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



<?php
$user_name=$_POST[user_name];
$password=$_POST[password];
$mshaer_select =mysql_query=("SELECT * FROM `table_name` WHERE `password`='$password' AND `user_name`='$user_name' ");

if($mshaer_select)
{
print "تمت العملية بنجاح";
}
else
{
print "لم تتم العملية يوجد خطأ";
}
?>
لاحظ اننا استخدمنا اكثر من شرط واستخدمنا الامر

AND ومعناه و



الأمر
DELETEومعناه الحذف


<?php
$user_name=$_POST[user_name];
$password=$_POST[password];
$mshaer_delete =mysql_query=("DELETE FROM `table_name` WHERE `password`='$password' AND `user_name`='$user_name' ");

if($mshaer_delete)
{
print "تمت العملية بنجاح";
}
else
{
print "لم تتم العملية يوجد خطأ";
}
?>
تستطيع استخدام شرط لتحديد صف معين او عدم استخدام شرط لمسح كافة السجلات في الجدول المحدد
<?php

$mshaer_delete =mysql_query=("DELETE FROM `table_name` ");

if($mshaer_delete)
{
print "تمت العملية بنجاح";
}
else
{
print "لم تتم العملية يوجد خطأ";
}
?>الآن بعض المعلومات بشكل سريع


رتبها بواسطة الحقل id_postORDER BY `id_post` استخدام LIMITمعناه محدد
LIMIT 10لجلب عشر نتائج فقط

DESC معناه تنازلي


DESC LIMIT 10اجلب اخر عشر نتائج تنازليا من الاخير يعني

ASC تصاعدي

ASC LIMIT 10اجلب آخر عشر نتائج تصاعدي من البداية او بمعنى اصح من الاصغر





الآن لنبدأ بالعمل الحقيقي


لجلب آخر عشر صفوف بالامر SELECT وطباعة محتوياتها




<?php

$mshaer_select=mysql_query=("SELECT * FROM `table_name`
ORDER BY `id_post` DESC LIMIT 5 ");
$row_select =mysql_fetch_array($mshaer_select);



print $row_select[user_name];
print $row_select[password];


?> ولكن مافائدة الامر السابق ؟
mysql_fetch_array();هذه الدالة تعيد النتائج على شكل مصفوفه


لكن الاستعلام السابق سيعرض استعلام واحد ويتوقف

كيف نجعله لايتوقف
باستخدام الأمر

while ()وبمعنى ادق معنى while() حلقة تكرار

لنرى المثال وسنفهم



<?php

$mshaer_select=mysql_query=("SELECT * FROM `table_name`
ORDER BY `id_post` DESC LIMIT 5 ");
while($row_select =mysql_fetch_array($mshaer_select))
{


print $row_select[user_name];
print $row_select[password];

}
?>
الآن ستتم طباعة آخر خمس صفوف

كمثال للنتيجه

سيتم طباعة

عليوي الشمري
ابو تهاني الشمري
أحمد الشمري
يوسف الكعبي
عبدالمجيد الشمري
وتتوقف الحلقه

MSHAER
09-13-2008, 09:30 PM
راح تحتاجون للدروس التالية او بالاصح راجعوها قبل قراءة الدرس

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

http://www.mshaer.net/vb/showthread.php?t=14185

الدرس الثاني أنشاء قاعده , أنشاء جدول , أنشاء حقل في الجدول


http://mshaer.net/vb/showthread.php?t=14187

وللحصول على المزيد بعد قراءة الدرس


توجه للفهرس

http://www.mshaer.net/vb/showthread.php?t=20315
=========


بانتظار اسئلتكم وتطبيقاتكم ولو مافهمتو بلغوني استعين بامثله اكثر وادق بس الله يرضى عليكم قبل اي واحد يسأل ياليت يحاول يفهم او يحاول يطبق كل شيء على الاباتشي ويبلغني بمكان الخطأ بكل مكان وبدون اظهار الخطأ والتطبيق لن يتم الرد على اي شخص

MSHAER
09-14-2008, 10:02 AM
اذا كنت لحالي بالدوره ريحوني اوقفها .. خلوني على الاقل اعبد ربي في رمضان ...

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

عموما ربي يوفقكم .

ALNAQEB
09-14-2008, 10:52 AM
لالالالالالالالالالالالالالالالالالالالالالالالالا لالالا تكفى اخوي عليوي والله ما شفت الدورة اللي توي ولا ادري عنهاانا اول المتابيعن لك فديتك كمل لو عشاني اذا استاهل وربي حلم حياتي اتعلم هالبرمجيات برغبة صادقة
لاني جديد على الدورة
عطيني يومين اراجع واطبق الدروس السابقة من اولها
ولو وصلت هالدرس برد عليك وتكمل لاهنت :tears:

شقران
09-14-2008, 11:15 AM
ابو تهاني الله يعطيك العافيه وعز الله انك ماقصرت
لكن اشتغل على راحتك واللي يريحك يابعدي ..

كلهم ضدي
09-14-2008, 10:48 PM
وعليكم السلام ورحمة الله وبركاته ,


جزاك الله خير اخوي عليوي ,



,,,


اخوي عليوي ,

مثل ماقلت لك انا مبتدئ مره, يعني ماعرف شي , :)

الاسئله , :)

كيف استخدم الاوامر, هل نحطها بملف واحد مع ملف الكونفق ؟؟؟؟
واذا حطيناها بملف واحد كيف يكون شكلها النهائي ؟ ,والا كل واحد بملف , والا نحطها بـ القاعدة اللي راح نسويها عند طريق [ http://localhost/phpMyAdmin ] ؟؟

والله ابي اطبق وهذا اللي ماخلاني اشارك قلت يمكن ماتفهم بالاوامر ويجي واحد ويسئل وتصير من حظي :)


واعذرني على الاسئله طال عمرك ,



اذا كنت لحالي بالدوره ريحوني اوقفها .. خلوني على الاقل اعبد ربي في رمضان ...

والله يالغلا لو حنا مانعينك عن العباده والله ماراح ننفعك الا بالدعاء ,
و لو تبي توقفها لـ بعد العيد عشان يكون كل واحد مستقر في بيتهم مايتعذر بالسفريات,
8
هـ الكلام حبآ بيك يالغلا :fruits_cherry:

محمد منذر
09-14-2008, 11:50 PM
بارك الله فيك شرح مفصل

anascoo
10-15-2008, 10:09 AM
السلام عليكة ورحمة الله

اعمل الدرس لكن بقول فى مشكلة
<?php
$dbhost="localhost";
$dbusername="root";
$dbpassword="";
$dblinkid=msql_connect($dbhost, $dbusername, $dbpassword);
$dbname="oh";
$checkbd=mysql_select_db($dbname);
if($checkbd);
{
print"تم الاتصال";
}else{
print"لم يتم الاتصال";
print"رسالة الخطاء هى";
mysql_error
}
?>

يقول المشلكلة
Parse error: parse error in c:\appserv\www\oh\3.php on line 11

MSHAER
10-18-2008, 03:17 PM
السلام عليكة ورحمة الله

اعمل الدرس لكن بقول فى مشكلة
<?php
$dbhost="localhost";
$dbusername="root";
$dbpassword="";
$dblinkid=msql_connect($dbhost, $dbusername, $dbpassword);
$dbname="oh";
$checkbd=mysql_select_db($dbname);
if($checkbd);
{
print"تم الاتصال";
}else{
print"لم يتم الاتصال";
print"رسالة الخطاء هى";
mysql_error
}
?>يقول المشلكلة
Parse error: parse error in c:\appserv\www\oh\3.php on line 11
التعلم ليس بالعشوائية الخطأ واضح لو ركزت

$dblinkid=msql_connect($dbhost, $dbusername, $dbpassword);

في هالسطر بالتحديد
msql
؟؟؟
ركز بالدرس وركز اثناء الكتابة