وألان سيتم العودة إلى الدرس والتطوير الأول
ما التطوير والتجديدات والإضافات :
1- إضافة قاعدة بيانات من 3جداول
2- إضافة إدارة يتم فيها قراءة والرد على الرسائل
أسباب هذا التطوير وأهدافه:
1- عدم فقدان أي رسالة
2- تسهيل الأمر على صاحب الموقع
3- السرعة في تلبية الطلب
يتكون البرنامج من الصفحات التالية :
form.php وهو ملف الإرسال
admin.php هي صفحة الإدارة يتم فيها الدخول و رؤية الرسائل و رؤية الرسائل التي لم ترسل للبريد و الرد عليها وقراءة الردود التي تم أرسلها من البرنامج
install.php صفحة تركيب البرنامج
connect.php صفحة الاتصال بقاعدة البيانات
نبدأ بسم الله
صفحة الارسال:
form.php
كود PHP:
<?
require("connect.php");
if ($ac==''){
echo "<form method=\"POST\" action=\"form.php?ac=send\">
اسم المرسل : <input type=\"text\" name=\"nase\" size=\"20\"></p>
<p>بريد المرسل : <input type=\"text\" name=\"emse\" size=\"20\"></p>
<p>موضوع الرسالة : <input type=\"text\" name=\"sup\" size=\"20\"></p>
<p>الرسالة : <textarea rows=\"7\" name=\"mas\" cols=\"21\"></textarea></p>
<p><input type=\"submit\" value=\"إرسال\" name=\"B1\"></p>
</form>";
}
if($ac=='send'){
$nameto = "اسمك أو اسم الموقع";
$to = "بريدك أو بريد الموقع";
$headers = "From: ".$nase." <".$emse.">\r\n";
$headers .= "To: ".$nameto." <".$to.">\r\n";
$headers .= "Reply-To: ".$nase." <$emse>\r\n";
$sends=mail($to, $sup, $mas, $headers);
$dat = date("d/m/Y H:i:s");
if ($sends){
$in =mysql_query("INSERT INTO send (nase, emse, sup, mas ,date)"."VALUES ('$nase','$emse','$sup','$mas','$dat')");
echo "شكراً لك يا أخ/أخت : $nase لقد تم إرسال الرسالة إلى $nameto وسيصلك الرد قريباً";
}else{
$in =mysql_query("INSERT INTO nsend (nase, emse, sup, mas ,date)"."VALUES ('$nase','$emse','$sup','$mas','$dat')");
echo "لم يتم إرسال الرسالة";
}
}
?>
الشرح
ــــــــــــــــــــــــــــ
أول شي نشرح الدوال الموجودة في الفروم
1- requireوهي دالة جلب واستدعاء واستخدمنها هنا لاستدعاء ملف الاتصال بقواعد البيانات
كود PHP:
require("الملف المراد استدعائه");
2- date وهي دالة الزمن وتخرج لنا الوقت ولكي تعرف خصائصها موجودة هنا
كود PHP:
int date("تنسيق الوقت", $l);
$l=ختم لينكس وهو بارمتر اختياري ليس إجباري
3- mysql_query هي دالة الاستعلام من قاعدة البيانات وهذا الشكل الأولي لها
كود PHP:
int mysql_query(string query,[int database_connection]);
وكما نرى إنها تتكون من برمترين الأول يوضع به الاستعلام المراد وأما الثاني اختياري ويوضع به متغير الاتصال
ــــــ
ونبدء بشره الكود وهذا اول شيء بشرح الكود :
كود PHP:
require("admin/connect.php");
وهو طلب استدعاء ملف connect.php وهو ملف الاتصال بقاعدة البيانات
ـــــــ
هنا نشرح جلب الوقت
كود PHP:
$dat = date("d/m/Y H:i:s");
و هنا وضعنا تنسيق الوقت المراد أن يخرج لنا هكذا
28/5/2003 13:30:4
28 هو اليوم 5 هو الشهر 2003 هي السنة 13هي الساعة 30 هي الدقية 4 هي الثانية
ــــــــــــــــــــــــــــــــــــــ
شرح الاستعلام :
كود PHP:
$in =mysql_query("INSERT INTO send (nase, emse, sup, mas ,date)"."VALUES ('$nase','$emse','$sup','$mas','$dat')");
ونبدء:
كود PHP:
INSERT INTO send (nase, emse, sup, mas ,date)"."VALUES ('$nase','$emse','$sup','$mas','$dat')
وهذا هو الاستعلام الذي نريد تنفيذه بقاعدة البيانات وهو إضافة هذا السجل
و
كود PHP:
INSERT INTO send
وتعني أضف استعلام إلى جدول send
و
كود PHP:
(nase, emse, sup, mas ,date)
هي العواميد (الحقول) التي نريد إضافتها
و
كود PHP:
VALUES ('$nase','$emse','$sup','$mas','$dat')
هي القيم التي تضاف في العواميد (الحقول) وكما ترى أن كل قيمة مقابلة لي العامود (الحقل) المراد وضعها به
ويتم تنفيذ هذا الاستعلام عن طريق وضعه في دالة الاستعلامات mysql_query وقد سبق شرحها في الأعلى
و
كود PHP:
$in =mysql_query("INSERT INTO nsend (nase, emse, sup, mas ,date)"."VALUES ('$nase','$emse','$sup','$mas','$dat')");
هو نفس النص السابق لايختلف عنه بش
واما بقيت النموضج فقد تم شرحه فيما سبق
وسيتم ان شاء الله طرح بقيت الصفحات الخاصة بهذا التطوير
واي سؤال في هذه الصفحة قبل البدء بغيرها ارجو وضعه الان
تحياتي
logicina