الويب العربي

الويب العربي (http://www.arabwebtalk.com/index.php)
-   تبادل خبرات البرمجة (http://www.arabwebtalk.com/forumdisplay.php?f=57)
-   -   دورة : برمجة موقع شخصي |الدرس[3] الجزء الثاني (http://www.arabwebtalk.com/showthread.php?t=117902)

phpxcode 10-08-2009 05:07 PM

دورة : برمجة موقع شخصي |الدرس[3] الجزء الثاني
 
السلام عليكم و رحمة الله و بركاته
اليوم نكمل الجزء الثاني من الدرس الثالث بإذن الله

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


نبدأ باسم الله


الان ننتقل لصفحة المتغير "s == 2" و طبعا يبقى "op == 2" كما قلنا





كود PHP:

if ($_GET['s'] == 2)

{
$query mysql_query("SELECT id,title FROM subject order by id desc");

echo 
"<table border='1' cellpadding='2' style='border-collapse: collapse' bordercolor='#111111' width='98%' id='AutoNumber1' dir='rtl'>

    <tr>

      <td width='86%'>

      <p align='center'>االموضوع</td>

      <td width='7%'><p align='center'>تعديل</p></td>

    </tr>"
;

while(
$row mysql_fetch_array($query))

{

echo 
"<tr>

      <td width='86%'>
$row[title]</td>

      <td width='7%'><p align='center'><a href='?op=2&s=edit&id=
$row[id]'>تعديل</a></p></td>

    </tr>"
;


}


echo 
"</table>";


}
if (
$_GET['s'] == "edit")

{
$result mysql_query("select * from subject where id =".$id);
$result mysql_fetch_array($result);

echo 
"<form method='POST' action='?op=2&s=done&id=$id'>

<input type='hidden' name='id' value='
$result[id]'>



<div align='center'>

<center>

<table border='1' cellpadding='2' style='border-collapse: collapse' bordercolor='#111111' width='100%'  dir='rtl'>



<tr>

<td width='30%'>العناون :</td>

<td width='70%'><input name='n_title' size='60' value='
$result[title]'></td>

</tr>



<tr>

<td width='30%'>الموضوع :</td>

<td width='70%'><input name='n_post' size='60' value='
$result[post]'></td>

</tr>



<tr>

<td width='100%' colspan='2' align='center'><input type='submit' value=' تعديل البيانات ' name='xxx'></td>

</tr>

"
;




}

if (
$_GET['s'] == "done")

{
$id=$_GET['id'];

$title=$_POST[n_title];

$post=$_POST[n_post];

$DoUpdate=mysql_query("UPDATE subject SET  title='$title' , post='$post' where id='$id' ");

if(!
$DoUpdate)

{

echo
"<br />هنالك مشكلة في تعديل المقال!!!!!";

}

else

{


echo
"<br />تم التحديث بنجاح";

}



الان هذه الجزئية او الصفحة سوف تظهر اذا كان المتغير "op ==2 & s ==2" و نحصل على قيمهم من الرابط طبعا

كود PHP:

if ($_GET['s'] == 2

اي ان الرابط المعطى اذا كان يحتوي "op ==2 & s ==2" فأظهر الاكواد التالية



كود PHP:

{
$query mysql_query("SELECT id,title FROM subject order by id desc"); 

استعلام لإظهار المواضيع المخزنة في قاعدة البيانات من الاقدم الى الاحدث



كود PHP:

echo "<table border='1' cellpadding='2' style='border-collapse: collapse' bordercolor='#111111' width='98%' id='AutoNumber1' dir='rtl'>

    <tr>

      <td width='86%'>

      <p align='center'>االموضوع</td>

      <td width='7%'><p align='center'>تعديل</p></td>

    </tr>"
;

while(
$row mysql_fetch_array($query))

{

echo 
"<tr>

      <td width='86%'>
$row[title]</td>

      <td width='7%'><p align='center'><a href='?op=2&s=edit&id=
$row[id]'>تعديل</a></p></td>

    </tr>"
;


}


echo 
"</table>";




اكواد html لتنسيق الصفحة و نرى ان هنالك مصفوفتين $row[title] و $row[id] و حلقة while
و ما حدث انه قلنا طالما هنالك بيانات في قاعدة البيانات فاطبع عنوان الموضوع و الرابط لتعديله
سوف يكون مع تعريف id كمتغير في الرابط


[php]
كود PHP:

if ($_GET['s'] == "edit")

{
$result mysql_query("select * from subject where id =".$id);
$result mysql_fetch_array($result);

echo 
"<form method='POST' action='?op=2&s=done&id=$id'>

<input type='hidden' name='id' value='
$result[id]'>



<div align='
if (
$_GET['s'] == "done")

{
$id=$_GET['id'];

$title=$_POST[n_title];

$post=$_POST[n_post];

$DoUpdate=mysql_query("UPDATE subject SET  title='$title' post='$post' where id='$id' ");

if(!
$DoUpdate)

{

echo"
<br />هنالك مشكلة في تعديل المقال!!!!!";

}

else

{


echo"
<br />تم التحديث بنجاح";

}

}
center'>

<center>

<table border='1' cellpadding='2' style='border-collapse: collapse' bordercolor='#111111' width='100%'  dir='rtl'>



<tr>

<td width='30%'>العناون :</td>

<td width='70%'><input name='n_title' size='60' value='
$result[title]'></td>

</tr>



<tr>

<td width='30%'>الموضوع :</td>

<td width='70%'><input name='n_post' size='60' value='
$result[post]'></td>

</tr>



<tr>

<td width='100%' colspan='2' align='center'><input type='submit' value=' تعديل البيانات ' name='xxx'></td>

</tr>

"
;






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

كود PHP:

if ($_GET['s'] == "edit"

كما قلنا اعطاء المتغير s قيمة نصية

كود PHP:

{
$result mysql_query("select * from subject where id =".$id);
$result mysql_fetch_array($result); 

الان هذا استعلام لإظهار البيانات الموجودة في الموضوع الذي يحمل رقم الـ id الذي تم تعريفه بالرابط

كود PHP:

echo "<form method='POST' action='?op=2&s=done&id=$id'>

<input type='hidden' name='id' value='
$result[id]'>



<div align='center'>

<center>

<table border='1' cellpadding='2' style='border-collapse: collapse' bordercolor='#111111' width='100%'  dir='rtl'>



<tr>

<td width='30%'>العناون :</td>

<td width='70%'><input name='n_title' size='60' value='
$result[title]'></td>

</tr>



<tr>

<td width='30%'>الموضوع :</td>

<td width='70%'><input name='n_post' size='60' value='
$result[post]'></td>

</tr>



<tr>

<td width='100%' colspan='2' align='center'><input type='submit' value=' تعديل البيانات ' name='xxx'></td>

</tr>

"


اكواد html لتنسيق الصفحة و ايضا مصفوفة لإظهار البيانات اثناء التعديل
فلو لم نضع قيمة value مصفوفة فسوف تكون الحقول اثناء تعديل المقال فارغة و لا يظهر فيها المقال المراد تعديله


كود PHP:


if ($_GET['s'] == "done")

{
$id=$_GET['id'];

$title=$_POST[n_title];

$post=$_POST[n_post];

$DoUpdate=mysql_query("UPDATE subject SET  title='$title' , post='$post' where id='$id' ");

if(!
$DoUpdate)

{

echo
"<br />هنالك مشكلة في تعديل المقال!!!!!";

}

else

{


echo
"<br />تم التحديث بنجاح";

}



الان ايضا عرفنا المتغير s بقيمة نصية و وضعنا شرط انه اذا تم استلام البيانات من نموذج التعديل
فادخلهم بدل البيانات السابقة و اذا لم يتم اظهر لنا رسالة خطأ

الان بقس لنا اسهل جزء في لوحة الادمن و هو الحذف


كود PHP:


if ($_GET['s'] == )

{
$query mysql_query("SELECT id,title FROM subject order by id desc");
echo 
"<table border='1' cellpadding='2' style='border-collapse: collapse' bordercolor='#111111' width='98%' id='AutoNumber1' dir='rtl'>

    <tr>

      <td width='86%'>

      <p align='center'>االموضوع</td>

      <td width='7%'><p align='center'>حذف</p></td>

    </tr>"
;
while(
$row mysql_fetch_array($query))

{

echo 
"<tr>

      <td width='86%'>
$row[title]</td>

      <td width='7%'><p align='center'><a href='?op=2&s=delete&id=
$row[id]'>حــذف</a></p></td>

    </tr>"
;

}

echo 
"</table>";


}


if (
$_GET['s'] == "delete")
{
$id intval($_GET['id']);

$query =  mysql_query("DELETE FROM subject WHERE id = $id ");

echo 
"<div align='center'>تمت عملية حذف البيانات بنجاح</div>";



ساشرحه ببساطة اذا تم اعطاء المتغير s قيمة 3 من خلال الرابط سوف تظهر لنا جميع المواضيع المخزنة في قاعدة البيانات
و كل موضوع عبارة عن رابط يحتوي على قيمة نصية للمتغير s و هي delete عندها سوف يقوم بحذف البيانات من القاعدة
عند الموضوع الذي يحتوي على الـ id الذي تم اعطاء في الرابط عند اختيارنا للموضوع




و لله الحمد تم الانتهاء من التحكم في الموقع مع انه بقي لنا التحكم بالاقسام و لكن كما قلت انها عملية تكرير لما فعلنا الان
فقط تغير بعض اكواد html لتناسب الاقسام و تغير اسم الجدول و اسماء الحقول

و الدرس القادم ان شاء الله سهل جدا و هو اظهار المواضيع او المقالات حسب تصنيف الاقسام


و في النهاية دعوة لي و لوالدي لن تضرك بشيء
تحياتي للجميع

agent47 31-08-2009 03:14 AM

شكرا على الموضوع

مصمم ديزاين 05-09-2009 02:02 AM

مشكور بارك الله فيك


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

Powered by vBulletin
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © ArabWebTalk.Com 2004-2012