دفتر زوار (php) فائق من ملف واحد .. ودون أية إعدادات..!!
- بسم الله الرحمن الرحيم
لا شك أن كلاً منا يطمحُ بإضافة مؤثرات و تطبيقات تُـقَـوِّي من تفاعلِ موقعه مع زواره.
ونحن الآن بصدد كيفية إنشاءِ تطبيقٍ بسيط لكنه يُضفي على موقعِك شيئًا من تلك التفاعلية والحيوية، وهو ما يُـطلق عليه في العادةِ اسمَ (دفتر الزوار) أو (أضـف تعليقك) ..
- هذا التطبيق يمكنك إدراجه في أي صفحة php للسماح بالزوار بإضافة تعليقاتهم و ملاحظاتهم.
- بيانات النموذج تخزن في ملف يحمل نفس اسم الملف بالإضافة إلى (comment.) ضمن نفس دليل .
يمكنك أن تقوم بتسمية الملف بأي اسم تشاء قبل التحميل.
- يجب تغيير صلاحية الدليل الموجود فيه الملف ليكون قابلا للكتابة (أي: 777) وذلك عند التحميل من برنامج الإف تي بي .
- لا يحتاج الملف قبل تحميله إلى أية إضافات أو تعديلات إلا لمن أراد تغيير الهيئات والألوان فحسب.
- يقوم التطبيق بتحويل الأسطر الفارغة إلى فقرات ( أي إلى الوسم: <P> ) .
- يمكنك تعطيل إدراج وسوم لغة (إتش تي إم إل) بإزالة التعليق من سطر "strip_tags" لكن يجدر الانتباه إلى إن هذه الدالة الوظيفية تحتاج الإصدارة الرابعة من php فيما أعلم.
- هذه هي أسهل و أبسط طريقة لإضافة وظيفة إدراج التعليقات في الصفحات دون الحاجة إلى قاعدة بيانات MySQL .
- يمكنك إدراج هذا التطبيق في أي من صفحات php الأخرى عن طريق العبارة التالية :
كود:
<? require("/some/full/path/guestbook.php"); ?>
بالمسار المطلق (Absolute path) ، أو بالمسار النسبي (Relative path) إلى الدليل الجذر:
كود:
<? require($DOCUMENT_ROOT . "/relativepath/guestbook.php"); ?>
لكن يجدر الانتباه إلى إزالة ترويسة الصفحة من الوسم <HTML> إلى الوسم <BODY> إن أحببت استعمال هذه الطريقة لإدراج التطبيق في الصفحات الأخرى .
والطريقة الافتراضية لتركيب هذا البرنامج هي نسخ الشيفرة التالية وحفظها باسم: "guestbook.php"
أو اسم نحوه لكن بامتداد (php.) أو (php3.) أو (phtml.) حسب دعم مزودك لأنواع تلك الملفات.
ومن ثم القيام بتحميل الملف إلى موقعك عن طريق الإف تي بي ضمن دليل صلاحياته معينة إلى: 777 .
وأخيرا قم بطلب الملف عن طريق المتصفح وستراه يعمل بكل سلاسة ـ إن شاء الله .
_________________________________________
كود:
<html dir="rtl" lang="ar-sa">
<head>
<title> دفــــتـــــر الـــــــزوار </title>
</head>
<META http-equiv="Content-Type" content="text/html; charset=windows-1256">
<META http-equiv="Content-Language" content="ar-sa">
<body bgcolor="#D9E1E1" style="font: bold 12pt Simlified Arabic;">
<table border="1" width="600" cellspacing="0" cellpadding="5" align="center" bgcolor="#CBE6FF" bordercolor=#808080 bordercolorlight=black bordercolordark=white>
<tr>
<td align="right" bgcolor="#0099CC" "1" height="17">
<P align="center"><FONT color="#ffffDE" face="Monotype Koufi" size="5">
دفــــتـــــر الـــــــزوار
</font>
</tr>
<tr>
<td>
<table border="0" width="100%" Xstyle="border-style: double; border-color: #900000" cellpadding="11">
<tr>
<td width="100%" align="right" bgcolor="#E3F1FF">
<!------------------------ نموذج الكتابة ------------------------>
<br>
<table width=350 align=center border=1 cellspacing=0 cellpadding=7 bordercolor=#808080 bordercolorlight=#000000 bordercolordark=#FFFFFF bgcolor=#DDDDDD>
<tr><td>
<table align=center border=0 cellspacing=0 cellpadding=7 rules=none bordercolor=#808080 bordercolorlight=#000000 bordercolordark=#FFFFFF bgcolor=#DDDDDD>
<tr><td bgcolor=#CCCCCC>
<FORM method="post">
<b>الاســـــم:</b>
</td>
<td bgcolor=#CCCCCC>
<INPUT name="name" type="text" size="49" style="background: FEFEFE;">
</td>
</tr>
<tr>
<td bgcolor=#DDDDDD>
<b> التعـــلـيــق :</b><BR>
</td>
<td bgcolor=#DDDDDD>
<TEXTAREA name="message" rows=6 cols=42 wrap=virtual style="background: FEFEFE;"> </TEXTAREA>
</td>
</tr>
<tr>
<td bgcolor=#CCCCCC colspan="2">
<center><INPUT name="submit" type="submit" value="أضـف تعليـقـك"
style="color: #FFFFFF; background-color: #0099CC; font-size: 10pt; font-family: Tahoma; font-weight: bold"></center>
</td>
</tr>
</FORM>
</table>
</td>
</tr>
</table>
<br>
<!--============================================================-->
<?
/*
1- Steve Yelvington <steve@yelvington.com>
2- أبو حازم <muhammad@muhammad.to>
3- ........ <........@...........>
*/
if ($message)
{
/* HTML أزل التعليـق من السطرين التاليـين لإبطال السـماح بلغة */
/* $name = strip_tags($name); */
/* $message = strip_tags($message); */
$message = ereg_replace("\r\n\r\n", "\n<P>", $message);
$date = date("التاريخ : F j Y ");
$message = "<table width=350 align=center border=0 cellspacing=0 cellpadding=3 bordercolor=#808080 bordercolorlight=black bordercolordark=white><tr><td bgcolor=#0000A0>\n\n<font face=Tahoma size=2 color=#FFFF55><B> $name </B> -- <font size=1 color=White> $date </font> </td></tr><tr><td bgcolor=#C0C0C0 style=\"font: bold 12pt simlified arabic;\"> $message <BR></td></tr></table>\n\n<p>";
// قراءة الملف إن كان موجودا
$textfile = basename($PHP_SELF) . ".comment";
if ($fp = @fopen ($textfile, "r")) // فتح الملف للقراءةإن لم تكن هناك مشاكل
{
$oldmessages = @fread($fp,filesize($textfile));
@fclose(fp);
}
// الآن يتم فتح الملف للكتابة مع الانتقال مباشرة إلى ترويسة الملف
$fp = fopen ($textfile, "w");
fwrite ($fp, $message);
fwrite ($fp, $oldmessages); // تأخير التعليقات القديمة إلى الأسفل
fclose ($fp);
}
@readfile(basename(($PHP_SELF . ".comment")));
?>
<!--============================================================-->
</td>
</tr>
</table>
</body></html>
هذا وباللهِ التوفيق .. واللهَ تعالى أسألُ أن ينفعَـني وإخواني به .
__________________
(( وَاهًا لهذه الّلغة .. التي أصبحت بينَ أعجميّ ُينادي بوَأْدِها، و عربيٍّ يعملُ على كَيدِها.
ومن نَظرَ في بطونِ تلكَ الكتبِ التي تُتُرجَمُ اليومَ رأى هذه الغَادةَ الشرقيةَ
و هي على فراشِ موتِها تَندِبُ خِدرًا قد ابتلذته الأقلام، و سِترًا قد هتكته الأوهام،
و قد فتحوا لها في بُطونِ هذه الكتبِ قبورًا، وخاطُوا لها من تلك الصُحُـفِ أكفانًا،
و هَيَّأُوا من هذه الأقلامِ أعوادًا.
و ما هو إلا أن يُثنِيَ ذلكَ الغربيُّ بدعوتِه حتى يُسرِعَ إلى جنازتِها أهلُها و ذو قرابتِها ))
حافظ إبراهيم في مقدمة كتاب (البؤساء)
[ من تغريب الألفاظ العلمية للعلامة : بكر بن عبد الله أبو زيد ]
____________________________________________
سبحانك اللهم و بحمدك .. أشهد أن لا إله إلا أنت .. أستغفرك و أتوب إليك.