استقبال البيانات من إستمارة

في هذا الدرس سنقونم بشرح طريقة التعامل مع
البيانات المدخلة عن طريق الفورم البريدي ..
في هذا المثال سنقوم باستقبال المدخلات و
طباعتها على الشاشة فقط..
 

ملاحظات

في الدروس القادمة سنقوم بشرح
طريقة ارسال الرسائل عن طريق البريد.


أولا  سننشأ الإستمارة التالية .. نطلب من
المستخدم إدخال اسمه و بريده و تعليقه مع
افتراض ان حقول الإسم و البريد مطلوبه..
 


 

* اسمك :



*بريدك:



تعليقك :




 


 

 هذا هو كود الإستمارة




 

<form method="POST" action="form.php"
name="myform">

<p align="center"><font size="1"><b>*
اسمك :<br>

<input type="text" name="yourname"
size="20"><br>

*بريدك:<br>

<input type="text" name="youremail"
size="20"><br>

تعليقك :<br>

</b></font><textarea rows="5"
name="yourcomment" cols="25"></textarea><br>

<input type="submit" value="ارسل"
></p>

</form>




 

سنحاول شرح الكود باختصار..الإستمارة تبدأ ب<Form>
و تنتهي ب </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
  
?>
    <form method="POST" action="form.php">
    <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="ارسل" name="B1">cf1 </p>
   </form>
<?
}
?> 
 

في الكود في الأعلى 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["اسم الحقل"];

?> 

في النهاية  لعرض الإستمارة داخل الجملة الشرطية  اغلنا أقواس البرنامج و وضعنا كود الإستمارة ثم أعدنا  فتحها لنضع قوس الشرط

 

 

 


Copyright © www.kettaneh.net