كيف نستقبل البيانات المرسلة من إستمارة أو نموذج و نطبع البيانات المرسلة فيها
في هذا الدرس سنقونم بشرح طريقة التعامل مع
البيانات المدخلة عن طريق الفورم البريدي ..
في هذا المثال سنقوم باستقبال المدخلات و
طباعتها على الشاشة فقط..
أولا سننشأ الإستمارة التالية .. نطلب من
المستخدم إدخال اسمه و بريده و تعليقه مع
افتراض ان حقول الإسم و البريد مطلوبه..
هذا هو كود الإستمارة
<form method="POST" action="form.php"
name="myform">
<p align="center"><font size="1"><b>*
اسمك :
<input type="text" name="yourname"
size="20">
*بريدك:
<input type="text" name="youremail"
size="20">
تعليقك :
b>font><textarea rows="5"
name="yourcomment" cols="25">textarea>
<input type="submit" value="ارسل"
>p>
form>
?> |
سنحاول شرح الكود باختصار..الإستمارة تبدأ ب
هناك عنصران مهمان Action و الmethodستلاحظ
في كود الاستمارة في الاعلى ان الaction يشير إلى
form.phpإي هذاهو الملف الذي سنرسل إليه
البيانات المدخلة في الإستمارة ..
ثم ستلاحظ ان الmethod = "post" هناك نوعان من الmethods:
Get : وهي طريقة ارسال
البيانات عن طريق العنوان URL و هذا عندما
نستخدم مثلا علامة الإستفهام المتبوعة
بعدد من البيانات و كمية البيانات المرسلة
تكون محدودة ) جرب طباعة هذه الصفحة و انظر
إلى شريط العنوان في الاعلى لتفهم ما اعني(
Post: و هي طريقة غير
محدودةو هي الطريقة التي تستخدم اكثر.. كما
سنفعل في هذا المثال..
ثم بدانا بعرض عناصر الإستمارة من الحقول ..
لدينا هنا ثلاث حقول..
<input type="text" name="yourname"
size="20">
<input type="text" name="youremail"
size="20">
<textarea rows="5" name="yourcomment"
cols="25"> textarea>
?> |
لاحظ الخاصية name عند كل حقل من الحقول .. ستجد
ان لك حقل اسم .. مثلا اسمينا حقل الإسم yourname و
حقل البريد youremail وحقل التعليق yourcomment
ملاحظة
عليك دائما تسمية الحقول باسماء تعرفها و تتذكرها لانك ستحتاج استخدام هذه الاسماء عن برمجة البرنامج .
الآن انشأ ملف و اسمه form.php و انسخ له
الكود من الاسفل و احفظه:
if ($HTTP_SERVER_VARS['REQUEST_METHOD']=="POST") //1
{
if ($HTTP_POST_VARS["yourname"] & $HTTP_POST_VARS["youremail"] ) //2
{
echo ("مرحبا $HTTP_POST_VARS["yourname"]
هذه هي البيانات التي زودتنا بها : ");
echo (""
$HTTP_POST_VARS["youremail"] بريدك هو:
و تعليقك هو :$HTTP_POST_VARS["yourcomment"]);
}else{
echo ("بيانات ناقصة");
}
}else{ //3
?>
}
?>
|
في الكود في الأعلى 3 مناطق منطقة رقم 1 و 2 و 3
if ($HTTP_SERVER_VARS['REQUEST_METHOD']=="POST")
?> |
وضعنا في البداية جملة للتأكد من أننا عندما نطلب الصفحة سنطلبها عن طريق الاستمارة لو كنا سنطلبها عن طريق الإستمارة سننفذ المنطقة 2 و إلا سننتقل للمنطقة 3 حيث سنعرض الإستمارة لأن طلب الصفحة تم بطريقة عادية و ليست بيانات مرسلة عن طريق الإستمارة
if ($HTTP_POST_VARS["yourname"] & $HTTP_POST_VARS["youremail"] )
{
echo ("مرحبا $HTTP_POST_VARS["yourname"]
هذه هي البيانات التي زودتنا بها : ");
echo (""
$HTTP_POST_VARS["youremail"] بريدك هو:
و تعليقك هو :$HTTP_POST_VARS["yourcomment"]);
}else{
echo ("بيانات ناقصة");
}
}؟> |
لو كان الطلب تم عن طريق الإستمارة سننفذ المنطقة رقم 2 و هي أولا نتأكد من أن الحقلين الاسم yourname و البريد youremail
كما تلاحظ عندما صممنا الاستمارة في الأعلى سمينا حقل الاسم yourname و بالتالي عندما نستقبل البيانات من هذا الحقل هناك طريقتين لو كنا استخدما
Get : $HTTP_GET_VARS["اسم الحقل"];
Post : $HTTP_POST_VARS["اسم الحقل"];
?>
|
في النهاية لعرض الإستمارة داخل الجملة الشرطية اغلنا أقواس البرنامج و وضعنا كود الإستمارة ثم أعدنا فتحها لنضع قوس الشرط