بسم الله الرحمن الرحيم
نبدأ الدرس الثاني من برمجة موقع شخصي
الرجاء مراجعة الدرس الاول
الان سوف ننشأ ملف index.php في مجلد admin
محتويات الملف كالتالي :
كود PHP:
<?PHP
session_start();
include ('../common.php');
if ($_GET['op']=='logout'){ session_unregister(admin); }
if(!session_is_registered(admin))
{
if (!$_POST['pass'] || $_POST['pass']=='')
{ ?>
<div align="center" dir="rtl">
<table border="0" width="90%" cellspacing="0" cellpadding="0">
<tr>
<td>
<table border="1" width="100%" id="table2" bordercolor="#C0C0C0" align="left">
<form action="?" method="post">
<tr>
<td colspan=2>
<input type=text name=name >:admin
</td>
</tr>
<tr>
<td><input type="password" name="pass" size="20" dir="rtl">:password </td>
</tr>
<tr>
<td colspan=2>
<input type="submit" value="ÏÎæá">
</td>
</tr>
</form>
</table>
</td>
</tr>
</table>
</div>
<?
exit;
}else{
$name = $_POST['name'];
$pass = $_POST['pass'];
if ( $name == $aname && $pass == $apass)
{
session_register(admin);
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0; URL=?op=\">\n";
}else{
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0; URL=?op=\">\n";
}
exit;
}
}
if ($_GET['op'] == null)
{
echo "<div dir=rtl><font align=center size=5><p align=center>بسم الله الرحمن الرحيم</p></font><br /><br />
<p>رجاءً اختر ما تريد عمله من القائمة التالية :-<p><br />
<li><a href='?op=2'>تحرير المقالات</a></li>
<li><a href='?op=3'>تحرير الاقسام</a></li>
<li><a href='?op=logout'>خروج</a></li>
";
}
if ($_GET['op'] == 2)
{
echo "<center><a href=?op=>لوحة <br />|<a href=?op=2&s=1>اضافة مقال</a>|<a href=?op=2&s=2>تعديل مقال</a>|
|<a href=?op=2&s=3>حذف مقال</a>|</center>
";
if ($_GET['s'] == 1)
{
$que = mysql_query("select * from section");
if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE"))
echo "<script language=JavaScript src='../ed/editor.js'></script>";
else
echo "<script language=JavaScript src='../ed/moz/editor.js'></script>";
echo "
<script>
function submitForm()
{
document.forms.Form1.elements.post.value = oEdit1.getHTMLBody();
document.forms.Form1.submit()
}
</script>";
echo "<pre id=\"idTemporary\" name=\"idTemporary\" style=\"display:none\">";
if(isset($_POST["post"]))
{
$sContent=stripslashes($_POST['post']);
echo htmlentities($sContent);
}
echo "</pre>";
?>
<br /><div dir=rtl><p align=right>
<?
echo "
<form method=post action=?op=2&d=1 id=\"Form1\">";
?>
<font size=4 >العنوان: </font>
<input type="text" name="title" size="20"><br />
<font size=4 >الموضوع: </font><br />
<?
echo "
<script>
var oEdit1 = new InnovaEditor(\"oEdit1\");
oEdit1.RENDER(document.getElementById(\"idTemporary\").innerHTML);
</script>
<input type=\"hidden\" name=\"post\" id=\"post\">
";
?>
<br />
<font size=4 >مصدر المقال: </font>
<input type="text" name="sitefrom" value="http://" size="50">
<br /><br />
<?
echo "<select name=sec>";
while ($arr = mysql_fetch_array($que))
{
echo "
<option name=sec value=$arr[id]>$arr[name]</option>";
}
echo "</select>";
?>
<input type="submit" name="اضف" onclick=submitForm()>
</form>
</p></div>
<?
}
if ($_GET['d'] == 1)
{
$sent=mysql_query("insert into subject (id,title,post,sitefrom,section
) values ('','$title','$post','$sitefrom','$sec'
)");
if ("$sent") {echo "<p align=\"center\"><b><font color=\"#000000\" size=\"5\">لقد تم اضافة الخبر بنجاح</font></b></p>\n";
echo "<p align=\"center\"><a href='http://localhost/wild/show.php'><font color=\"#000000\" size=\"4\">\n";
echo "<span style=\"text-decoration: none\">مشاهدة الموضوع</span></font></a></p>\n";
} else {
echo " لم تتم العملية بنجاح " ;
}
}
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 />تم التحديث بنجاح";
}
}
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>";
}
}
if ($_GET['op'] == 3)
{
echo "<center><a href=?op=>لوحة التحكم <br />|<a href=?op=3&s=1>اضافة قسم</a>|<a href=?op=3&s=2>تعديل قسم</a>|
|<a href=?op=3&s=3>حذف قسم</a>|</center>
";
if ($_GET['s'] == 1)
{
?>
<br /><div dir=rtl><p align=right>
<form method=post action=?op=3&d=1>
<font size=4 >اسم القسم: </font>
<input type="text" name="name" size="20"><br />
<font size=4 >فرعي/رئيسي: </font>
<input type="text" name="kind" size="20"><br />
<font size=4 >ترتيبه: </font>
<input type="text" name="rank" size="50">
<br /><br />
<input type="submit" name="اضف" value="اضف">
</form>
</p></div>
<?
}
if ($_GET['d'] == 1)
{
$sent=mysql_query("insert into section (id,name,rank,kind
) values ('','$name','$rank','$kind'
)");
if ("$sent") {echo "<p align=\"center\"><b><font color=\"#000000\" size=\"5\">لقد تم اضافة الخبر بنجاح</font></b></p>\n";
echo "<p align=\"center\"><a href='http://localhost/wild/show.php'><font color=\"#000000\" size=\"4\">\n";
echo "<span style=\"text-decoration: none\">مشاهدة الموضوع</span></font></a></p>\n";
} else {
echo " لم تتم العملية بنجاح " ;
}
}
if ($_GET['s'] == 2)
{
$query = mysql_query("SELECT id,name FROM section 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[name]</td>
<td width='7%'><p align='center'><a href='?op=3&s=edit&id=$row[id]'>تعديل</a></p></td>
</tr>";
}
echo "</table>";
}
if ($_GET['s'] == "edit")
{
$result = mysql_query("select * from section where id =".$id);
$result = mysql_fetch_array($result);
echo "<form method='POST' action='?op=3&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='name' size='60' value='$result[name]'></td>
</tr>
<tr>
<td width='30%'>ترتيبه :</td>
<td width='70%'><input name='rank' size='60' value='$result[rank]'></td>
</tr>
<tr>
<td width='30%'>فرعي/رئيسي :</td>
<td width='70%'><input name='kind' size='60' value='$result[kind]'></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'];
$name=$_POST[name];
$kind=$_POST[kind];
$rank=$_POST[rank];
$DoUpdate=mysql_query("UPDATE section SET name='$name' , kind='$kind' , rank='$rank' where id='$id' ");
if(!$DoUpdate)
{
echo"<br />هنالك مشكلة في تعديل المقال!!!!!";
}
else
{
echo"<br />تم التحديث بنجاح";
}
}
if ($_GET['s'] == 3 )
{
$query = mysql_query("SELECT id,name FROM section 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[name]</td>
<td width='7%'><p align='center'><a href='?op=3&s=delete&id=$row[id]'>حــذف</a></p></td>
</tr>";
}
echo "</table>";
}
if ($_GET['s'] == "delete")
{
$id = intval($_GET['id']);
$query = mysql_query("DELETE FROM section WHERE id = $id ");
echo "<div align='center'>تمت عملية حذف البيانات بنجاح</div>";
}
}
?>
كبير شويه صح

لا تخاف كلها اشياء مكررة افهم جزء بسيط راح تفهم الباقي على طول
كود PHP:
session_start();
include ('../common.php');
اولا فتحنا جلسة و السبب هو لحماية الادمن بكلمة سر و لقد عرفناها ضمن المتغيرات بملف الـ config.php
ثانيا ادرجنا ملف common.php لانه يحتوي على ملف config.php و الاضافات الاخرى
كود PHP:
if ($_GET['op']=='logout'){ session_unregister(admin); }
اذا تم تسجيل خروج الادمن عن طريق الرابط
xxx.com/admin/index.php?op=logout
فاخرج من الجلسة
كود PHP:
if(!session_is_registered(admin))
{
if (!$_POST['pass'] || $_POST['pass']=='')
{ ?>
<div align="center" dir="rtl">
<table border="0" width="90%" cellspacing="0" cellpadding="0">
<tr>
<td>
<table border="1" width="100%" id="table2" bordercolor="#C0C0C0" align="left">
<form action="?" method="post">
<tr>
<td colspan=2>
<input type=text name=name >:admin
</td>
</tr>
<tr>
<td><input type="password" name="pass" size="20" dir="rtl">:password </td>
</tr>
<tr>
<td colspan=2>
<input type="submit" value="ÏÎæá">
</td>
</tr>
</form>
</table>
</td>
</tr>
</table>
</div>
<?
exit;
}
اذا لم يكن هنالك جلسة مفتوحة فأظهر اكواد الhtml و التي هي فورم لتسجيل دخول الادمن
كود PHP:
else{
$name = $_POST['name'];
$pass = $_POST['pass'];
if ( $name == $aname && $pass == $apass)
{
session_register(admin);
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0; URL=?op=\">\n";
}else{
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"0; URL=?op=\">\n";
}
exit;
}
اذا لم يكن هنالك جلسة او لم يكن هنالك اغلاق للجلسة فتأكد ان كلمة السر المدخلة في الفورم هي نفسها
المعرفة في ملف config.php اذا كان كذلك فاحفظ الجلسة و اعد توجيه المستخدم للصفحة الرئيسية
كود PHP:
if ($_GET['op'] == null)
{
echo "<div dir=rtl><font align=center size=5><p align=center>بسم الله الرحمن الرحيم</p></font><br /><br />
<p>رجاءً اختر ما تريد عمله من القائمة التالية :-<p><br />
<li><a href='?op=2'>تحرير المقالات</a></li>
<li><a href='?op=3'>تحرير الاقسام</a></li>
<li><a href='?op=logout'>خروج</a></li>
";
}
اذا كان المتغير op الذي يتم تعريفه في الرابط عن طريق المتصفح فارغ فأظهر هذا الكود القياسي
و الذي هو اختيار لما يريد عمله
كود PHP:
if ($_GET['op'] == 2)
{
echo "<center><a href=?op=>لوحة <br />|<a href=?op=2&s=1>اضافة مقال</a>|<a href=?op=2&s=2>تعديل مقال</a>|
|<a href=?op=2&s=3>حذف مقال</a>|</center>
";
if ($_GET['s'] == 1)
{
$que = mysql_query("select * from section");
if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE"))
echo "<script language=JavaScript src='../ed/editor.js'></script>";
else
echo "<script language=JavaScript src='../ed/moz/editor.js'></script>";
echo "
<script>
function submitForm()
{
document.forms.Form1.elements.post.value = oEdit1.getHTMLBody();
document.forms.Form1.submit()
}
</script>";
echo "<pre id=\"idTemporary\" name=\"idTemporary\" style=\"display:none\">";
if(isset($_POST["post"]))
{
$sContent=stripslashes($_POST['post']);
echo htmlentities($sContent);
}
echo "</pre>";
?>
<br /><div dir=rtl><p align=right>
<?
echo "
<form method=post action=?op=2&d=1 id=\"Form1\">";
?>
<font size=4 >العنوان: </font>
<input type="text" name="title" size="20"><br />
<font size=4 >الموضوع: </font><br />
<?
echo "
<script>
var oEdit1 = new InnovaEditor(\"oEdit1\");
oEdit1.RENDER(document.getElementById(\"idTemporary\").innerHTML);
</script>
<input type=\"hidden\" name=\"post\" id=\"post\">
";
?>
<br />
<font size=4 >مصدر المقال: </font>
<input type="text" name="sitefrom" value="http://" size="50">
<br /><br />
<?
echo "<select name=sec>";
while ($arr = mysql_fetch_array($que))
{
echo "
<option name=sec value=$arr[id]>$arr[name]</option>";
}
echo "</select>";
?>
<input type="submit" name="اضف" onclick=submitForm()>
</form>
</p></div>
<?
}
if ($_GET['d'] == 1)
{
$sent=mysql_query("insert into subject (id,title,post,sitefrom,section
) values ('','$title','$post','$sitefrom','$sec'
)");
if ("$sent") {echo "<p align=\"center\"><b><font color=\"#000000\" size=\"5\">لقد تم اضافة الخبر بنجاح</font></b></p>\n";
echo "<p align=\"center\"><a href='http://localhost/wild/show.php'><font color=\"#000000\" size=\"4\">\n";
echo "<span style=\"text-decoration: none\">مشاهدة الموضوع</span></font></a></p>\n";
} else {
echo " لم تتم العملية بنجاح " ;
}
}
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 />تم التحديث بنجاح";
}
}
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>";
}
}
هذا هو الجزء الاكبر من الملف و لكنه الاسهل
و سوف اشرحه ببساطة لان اغلبه اكواد html
اذا كان المتغير op الوارد من الرابط و الذي استدعيناه
بــ
يساوي القيمة 2 و الذي ادخلناها من خلال الضغط على الرابط المؤدي الى "تحرير المقالات"
فأظهر قائمة اخرى من اكواد ال html
و هذه الاكواد عبارة عن رواط تؤدي لملف index.php اي نفسه الذي نشتغل فيه الان
و لكن بزيادة المتغيرات فتصبح المتغيرات المعطاه
هي op و s
و كلما تغيرت قيمة s مع ثبات op سوف تتغير الخيارت المتاحة امامك
و كذلك مع op ==3
و لكن فقط اريد التنويه الى ان هذا الكود
كود PHP:
echo "
<script>
var oEdit1 = new InnovaEditor(\"oEdit1\");
oEdit1.RENDER(document.getElementById(\"idTemporary\").innerHTML);
</script>
<input type=\"hidden\" name=\"post\" id=\"post\">
";
هو كود جافا لادراج المحرر فقط و لا تحتاج فهمه لاي سبب
فقط اعرف انه يستبدل قيمة المحتويات الموجود داخل حقل الكتابة بالمحتويات نفسه
اضافة الى اكواد html انت لا تراها و انما تدرج مباشرة في القاعدة و هي لتنسيق النص
و شرح هذا الكود هو
كود PHP:
$result = mysql_query("select * from subject where id =".$id);
$result = mysql_fetch_array($result);
هو لاظهار النص عند عميلة التعديل يقوم باستخراج البيانات من القاعدة حسب المقال المطلوب
عن طريق تحديد id
الدرس لم يكتمل و لكن انتظر استفساراتكم و تعليقاتكم
و صدقوني لا تعتبروا ان هذا شي صعب ابداااااااااااااااااااااا
فلو دققتم و فهمتم الاكواد بالشكل المطلوب سوف تكتشفون اخطاء مني
و سوف تكتشفون اكواد لست بحاجة لها او يفضل ان استبدلها
المهم دعوة بظهر الغيب لي و لوالدي جزاكم الله خير
الدرس الثاني تابع لهذا الدرس و لكن بشيء من التفصيل و الدقة
تحياتي للجميع