السلام عليكم ورحمة الله وبركاته
ألقى التحيه على جميع قراء وأعضاء وزوار سوالف
وأقدم أول درس تطبيقى للغه PHP وأتمنى ان يعجبكم ..
---
كيف تبرمج شوت بوكس خاص بموقعك ..
-
برمجت أخيرا سكربت شوت بوكس ( صندوق الحوار )
واطلقت عليه Arabic Shout Box ويمكنك تحميله من هنا
--
لتلقى نظرة على الإسكربت أضغط هنا
----
الآن جميعنا حمل الإسكربت .. هل تريد ان تتعلم كيف صُنع وكيف قمت ببرمجته
اذا كنت من هؤلاء الطلبه المجتهدين الذين يريدون معرفه الشئ من أوله :nice:
أكمل معى
فى البدايه يجب ان يكون عندك محرر PHP وليكن PHP CODER
لعمل إسكربت شوت بوكس مرتبط بـ MYSQL سنحتاج لعمل 4 ملفات PHP- shout.php
- show.php
- config.php
- install.php
الملف الأول وهو لعرض المحادثه مع وجود فورم لوضع رسالتك
الملف الثانى وهو لعرض المحادثه فقط
الملف الثالث وهو ملف معروف جداُ فى جميع الإسكربتات وهو الملف الذى ستشع فيه بيانات قاعده البيانات وهيكون فيه أمر الإتصال بالقاعده
الملف الرابع وهو ملف التنصيب
======
نبدأ على بركة الله
افتح المحرر الذى تستخدمه .. ثم ضع الكود التالى فى الصفحه
كود:
<style type="text/css">
<!--
body, td, th {
font-family: Tahoma, Arial;
font-size: 10px;
color: #000000;
}
-->
</style>
<table width="100%" height="200" border="0" style="border-collapse: collapse" bordercolor="#111111" cellpadding="0" cellspacing="0">
<tr>
<td width="983">
<p align="center"><iframe scrolling="auto" src="show.php">
</iframe>
</td>
</tr>
</table>
<form action="shout.php" method="post">
<p align="center" dir="rtl"><br>
<input name="name_txt" type="text" id="name_txt" size="20" value="تفضل بكتابه إسمك">
</p>
<p align="center">رسالتك<br>
<textarea dir='rtl' name="message_txt" id="message_txt" rows="3" cols="20"></textarea>
</p>
</p>
<p align="center">
<input type="submit" name="Submit" value="أضف">
</p>
</form>
<style type="text/css">
<!--
body,td,th {
font-family: Tahoma, Arial;
font-size: 10px;
color: #000000;
}
-->
</style><?
$name= $_POST["name_txt"];
$message= $_POST["message_txt"];
include ('config.php');
MYSQL_QUERY("INSERT INTO shoutbox (id,name,message)".
"VALUES ('NULL','$name', '$message')");
?>
شرح للكود
هذه هو ملف shout.php
النصف الأول من الكود اظن انه سهل .. لأنه عبارة عن أكواد HTML و CSS فالكود التالى
كود:
<style type="text/css">
<!--
body, td, th {
font-family: Tahoma, Arial;
font-size: 10px;
color: #000000;
}
-->
هو كود CSS استخدمته لوضع منظر جمالى للصفحات
وأيضا هنالك كود مشابه له فى آخر الصفحه وهو ايضا CSS
نأتى لكود الـ HTML
كود:
<table width="100%" height="200" border="0" style="border-collapse: collapse" bordercolor="#111111" cellpadding="0" cellspacing="0">
<tr>
<td width="983">
<p align="center"><iframe scrolling="auto" src="show.php">
</iframe>
</td>
</tr>
</table>
<form action="shout.php" method="post">
<p align="center" dir="rtl"><br>
<input name="name_txt" type="text" id="name_txt" size="20" value="تفضل بكتابه إسمك">
</p>
<p align="center">رسالتك<br>
<textarea dir='rtl' name="message_txt" id="message_txt" rows="3" cols="20"></textarea>
</p>
</p>
<p align="center">
<input type="submit" name="Submit" value="أضف">
</p>
</form>
الكود له عمليتين الأولى هو عرض ملف show.php فى نفس الصفحه عن طريق ادراج فريم فى الصفحه
والثانى هو فورم بسيط وسيلته POST ينقل المعلومات إلى ملف shout.php حتى يقوم الملف بذرعها فى قاعده البيانات
وهذا ما يوضحه كود الـPHP الذى فى الأسفل
كود:
$name= $_POST["name_txt"];
$message= $_POST["message_txt"];
include ('config.php');
MYSQL_QUERY("INSERT INTO shoutbox (id,name,message)".
"VALUES ('NULL','$name', '$message')");
حفظنا المعلومات القادمه من فورم الـHTML واستدعينا ملف Config الذى توجد به معلومات القاعده ثم اعطيناه أمر بزرعها فى قاعده البيانات
الآن نكون أنتهينا من أول ملف وهو shout.php
الملف الثانى
وهو ملف show.php والذى استدعيناه فى فريم فى الملف السابق ووظيفته هى جلب المعلومات من قاعده البيانات وعرضها بالصفحه
افتح ملف جديد بالمحرر وضع فيه الكود التالى
كود:
<style type="text/css">
<!--
body,td,th {
font-family: Tahoma, Arial, Helvetica, sans-serif;
font-size: 10px;
}
-->
</style>
<?
include ('config.php');
$query = "SELECT message, name
FROM shoutbox order by id DESC LIMIT 10";
$result = mysql_query($query);
echo "<TABLE align='right'>";
while($r=mysql_fetch_array($result))
{
echo "<TR align='right'>
<TD align='right'><font-size: 10px; font family: Verdana;>
<strong>$r[name]</A></font></TD></strong>
</TR>
<TR>
<TD><font-size: 10px; font family: Verdana;>$r[message]</font></TD>
</TR>
<TR>
<TD><HR></TD>
فى البدايه ايضا ... هنالك كود CSS تجميلى
وبعده استدعينا ملف CONFIG لنتعرف على الهوست واليوزر واسم القاعده . إلخ
ثم وضعنا أمر جلب المعلومات من قاعده البيانات ووضعها بالصفحه
ثم أمرناه بطباعه كود HTML لعرض النتائج فى جدول ( موضحه بالكود الل فى الأسفل )
كود:
echo "<TABLE align='right'>";
while($r=mysql_fetch_array($result))
{
echo "<TR align='right'>
<TD align='right'><font-size: 10px; font family: Verdana;>
<strong>$r[name]</A></font></TD></strong>
</TR>
<TR>
<TD><font-size: 10px; font family: Verdana;>$r[message]</font></TD>
</TR>
<TR>
<TD><HR></TD>
</TR>";
}
echo "</TABLE>";
?>
ننتقل للمف الثالث والأكثر أهميه وهو ملف Config.php
وينقسم الملف لقسمين .. بعض المتغيرات التى سنضع فيها بيانات قاعده البيانات
وقسم الإتصال بقاعده البيانات عبر هذه المتغيرات
وها هو الكود يترجم نفسه
كود:
<?
$user = "";
$password = "";
$server = "localhost";
$dbname = "";
mysql_connect("$server","$user","$password") or die(mysql_error());
mysql_select_db("$dbname") or die(mysql_error());
?>
استعملنا mysql_connect للإتصال بقواعد البيانات والسيرفر
الملف الرابع والأخير
وهو ملف التنصيب install.php وانا تعلمت عمل هذا الملف من موقع الأستاذ نايف موقع بى اتش بى العربيه
وأعجبتنى الطريقه لذا استخدمتها فى كل سكربتاتى
الكود سهل جدا ويترجم نفسه ايضا :b
كود:
<?
include ('config.php');
$data = mysql_query ("
CREATE TABLE `shoutbox` (
`id` int(11) NOT NULL auto_increment,
`name` text NOT NULL,
`message` longtext NOT NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM; ");
if($data) {
Echo "تمت عمليه التنصيب بنجاح";
}
else {
echo "لم تتم العمليه بنجاح";
}
?>
فى البدايه استدعينا ملف config حتى نتعرف على قواعد البيانات ونقوم بالإتصال ..اذا لم يكن موجوداً
ثم وضعنا كود بسيط وهو وظيفته زرع جداول فى قاعده البيانات فى متغير وأسميناه data
مع استخدام داله mysql_query
ثم أمرنا بتفعيل المتغير .. فاذا تمت العمليه بنجاح .. قام بطبع رساله
واذا لم تتم قام بطبع أخرى طبعا بإستخدام داله if
--------------------------------------
أأمل ان يكون الشرح واضح وان يعجبكم الإسكربت
بالتوفيق أعزائى وأى استفسارات انا موجود ..
وأعذرونى عن أى تقصير أو اخطاء برمجيه فانا مازلت على أول الطريقوأعذرونى ايضا على أى اخطاء إملائيه تحيتى :
أسامة الهادى