السلام عليكم و رحمة الله و بركاته
اليوم نكمل الجزء الثاني من الدرس الثالث بإذن الله
و يجب عليك فهم جميع الدروس السابق للمتابعة و اذا فهمت درس اليوم
ان شاء الله سوف تكون قادر على برمجة اي سكربت تحتاجه
نبدأ باسم الله
الان ننتقل لصفحة المتغير "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'] == 3 )
{
$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 لتناسب الاقسام و تغير اسم الجدول و اسماء الحقول
و الدرس القادم ان شاء الله سهل جدا و هو اظهار المواضيع او المقالات حسب تصنيف الاقسام
و في النهاية دعوة لي و لوالدي لن تضرك بشيء
تحياتي للجميع