09

Document Sample
09 Powered By Docstoc
					                                 ‫التعامل مع العميل‬
‫،‬     ‫كما رأينا في الدروس السابقة ، فإن الـ‪ PHP‬يوفر رقم عظيم من المميزات عـن الــ‪ html‬لبنـا مواقـا الويـ‬
    ‫من األشيا األساسية التي لم نتكلم عنها حتي اآلن هي الموثوقية (أو االستقرار ) وهـو بـالميني اليـ ي‬
                                                                                              ‫واليري :‬

                  ‫القابلية على االحتفاظ بالميلومات بين صف تين منفردتين أو مختلفتين في المستيرض ...‬

‫بدون أي إضافات ، ‪ HTTP‬اليـوفر أي ميكانيكيـل لل فـاظ علـى البيانـات و يلهـا مسـتقرة لميالجـة تـتم بـين‬
  ‫صف تين ، كل طل ليف ة في االنترنت (‪ )request‬ليس لل أي عالقة بأي طل آخر ... مثال ا عندما تتطلـ‬
          ‫موقا المطور اليربي ومن ثم منتدي المطور اليربي فان كل الطلبين ليس لهما عالقل ببيضهما ...‬

‫بميطل آخر يمكننا أن نقول أن الـ‪ HTTP‬فاقدة ل التها (‪ )stateless‬أي أنها التيرف أي أن أمر طل اليف ة‬
‫ينتهي عند انتها الطل ، فهي عندما تقوم بنقل بيانات صف ة من السـيرفر الـى المسـتخدم فهـي تيـرف‬
‫من هو المس تخدم الذي يطل البيانات وعلى أي نافذه سيتم نقل البيانات وعند انتهـا للـف فـان كـل هـذا‬
 ‫الموضوع ينتهي وإلا عاد المستخدم فطل صف ة أخري فإنها ال تيرف إن كان هو نفس المستخدم أو ال !‬


          ‫إن القدرة على ال فاظ على و ود البيانات ليست وسيلة أو ميزة او قوة مقتيرة على الـ‪ PHP‬فقط .‬

‫فلقد رأيت كيف استطينا ارسال ميلومات مـن صـف ة إلـى صـف ة بـدون خسـران أي ميلومـات وللـف عـن‬
‫طريق الـ‪ html‬وبالرغم من للف فإن المستخدم عندما يقوم بإغالق اليف ة عند استقبالها للبيانات فان للف‬
‫ييني فقدانها لألبد ، عن طريق استخدام الـ‪ PHP‬يمكننـا اخبـار السـيرفر بـأن يقـوم بار ـاع البيانـات بطريقـة‬
                   ‫تمكننا من ال فاظ عليها ، مثلما سنري في هذا الدرس ، هناك ثالث طرق ليمل للف ....‬

‫التميز ال قيقي في قوة الفهم للــ‪ ، PHP‬يتطلـ منـا مفهوميـة يـدة فـي كيفيـل اسـتيمال الــ‪ PHP‬فـي‬
     ‫التفاعل ما المستخدم والمتيف الذي يستخدمل لكي نتغل على نقاط الضيف التي في الـ‪. http‬‬

                                                      ‫هذا هو موضوعنا لهذا اليوم والذي سنتكلم فيل عن :‬

                ‫- الـ‪ HTTP‬والـ ‪ html‬وم دودية قدراتهم ، وكيف يستطيا الـ‪ PHP‬التغل علي القيور فيهم .‬      ‫1‬
                          ‫- االحتفاظ بالميلومات التي نريد أن نستخدمها بين طل ليف تين مختلفيتن .‬        ‫2‬
                                                                       ‫- مكنكة ال فاظ على البيانات .‬   ‫3‬
                                                            ‫- الكيكات (‪ )cookies‬وكيفية استخدامها .‬     ‫4‬
                          ‫- 4‪ PHP‬والـ ‪ – native session‬المكنكة الداخلية لل فاظ على و ودية البيانات .‬   ‫5‬

‫هذا الدرس مفيد بشـكل ظـاهري لمـن هـو ديـد علـى انشـا مواقـا متفاعلـة متوسـطة – كبيـرة ال جـم‬
                                                                                ‫بواسطة الـ‪.. PHP‬‬
                                                ‫إنل ي توي على الكثير من بيض األمثلل التي تفيدك .‬

‫الهدف من هذا الدرس هو أن تتيرف على كيفية ال فاظ على ميلومات المسـتخدم عبـر متغيـر أو أكثـر بـين‬
‫أكثر من صف ة ، مثل أن تجيل اسـم المسـتخدم ظـاهر فـي كـل صـف ة يقـوم بـالولو إليهـا ... ممـا يؤكـد‬
                                                                          ‫استمرارية و ود البيانات .‬
‫لنفرض أن لدينا موقياا على االنترنت هذا الموقا يهـتم ببيـا وتسـويق مـواد غذا يـة أو أن هـذا الموقـا يقـدم‬
‫مسابقات ثقافية ، في اليادة عندما يقوم المستخدم بطل شرا سلية ميينة أو عندما يختـار الـدخول فـي‬
                                   ‫مسابقة من المسابقات الثقافية فإنل يقوم بدخول أكثر من صف ة بالتتابا‬

‫يختار السلية في اليف ة األولى وبيد للـف يقـوم بر يـة ميلومـات السـلية فـي اليـف ة الثانيـة واليـف ة‬
‫الثالثة يقوم فيها بتيبئة ميلوماتل للشرا أو غير للف إلى أن ينتهي من كافة الميلومات وبيـد للـف تنـته لـل‬
                              ‫في النهاية صف ة فيها ميلوماتل والسلية التي قام باختيارها وفاتورة شرا !!‬

‫أو يقوم باختيار نوع المسابقة الثقافيـة فـي اليـف ة األولـى وبيـد للـف يقـوم بال يـول علـى عـدة أسـئلل‬
‫مقسمة على عدة صف ات إلي أن ينتهي من المسابقة فتخر لل فـي النهايـة مجمـوع الـدر ات لألسـئلة‬
                                                                   ‫وميلوماتل وهل هو فا ز أم خاسر!!‬

‫في الواقا هذا ما يسمونل بالم افظة على الجلسة (‪ )maintain session‬وأقيـد بـذلف دخـول المسـتخدم‬
‫إلى صف ة وانتقالل من صف ة إلى صـف ة مـا الم افظـة علـى ميلوماتـل وغيـر للـف مـن البيانـات ، لكـي‬
                                                                         ‫نستطيا متابيتل أوال ا بأول .‬

‫في بروتوكول الـ‪ html‬والـ‪ http‬ال نستطيا ميرفة إلا ما كان الشخص عندما يطل صف ة ما هو نفسل عندما‬
‫يذه إلى اليف ة الثانية إل أن المستخدم عندما يطل صـف ة مـا (‪ )request‬مـن السـيرفر فـإن السـيرفر‬
‫يقوم بميرفة من أي مكان باليالم يتكلم هذا الشخص ويقوم بارسال اسـتجابل إليـل باعطـا ه اليـف ة التـي‬
‫كان يطلبها (‪ )response‬ولكن بيد للف فإن السيرفر ال ييرف إلا كـان هـذا الشـخص هـو نفسـل الـذي يقـوم‬
                                                        ‫بطل اليف ة الثانية أو الثالثة في السيرفر .‬

         ‫ـ‬     ‫ـ‬       ‫ـ‬
‫هن ـا ت ـأتي مي ـزة ال ــ‪ PHP‬وغيــره م ـن لغ ـات برمج ـة االنترن ـت ليــناعة ميكانيكي ـة إبق ـا تفاع ـل مس ـتمر بــين‬
                                                    ‫ـ‬                  ‫ـ‬     ‫ـ‬                      ‫ـ‬            ‫ـ‬
‫المستخدم و السيرفر عن طريق الـ‪ session‬و الــ‪ ، cookie‬ولكـي ال نيقـد الموضـوع دعونـا نـتكلم عـن للـف‬
                                             ‫عملياا فذلف أفضل لفهم الموضوع من الثرثرة التي ال فا دة منها .‬

                                                                     ‫1- استخدام الحقول المخفية‬

  ‫سنقوم اآلن بإنشا ثالث صف ات ، اليف ة األولى تطل من المستخدم ادخال اسمل ، واليف ة الثانية‬
                         ‫تقوم بالترحي بل واعطا ه ثالثة أسئلة ، واليف ة الثالثة تقوم باعطا ه النتيجة .‬

                                          ‫الكود التالي :‬                              ‫م رر نيوص لديف واكت‬         ‫افت‬
‫>‪ </p‬ادخل اسمك الكريم>"‪<p dir="rtl" align="center‬‬
‫>"‪<form method="POST" action="quiz2.php‬‬
‫>‪<hr‬‬
‫>‪<input type="text" name="name" size="20"><br‬‬
‫>‪" ></p‬إرسال"=‪<input type="submit" value‬‬
‫>‪</form‬‬
                                                                                          ‫احفظها باسم ‪quiz.php‬‬

                                           ‫م رر النيوص واكت الكود التالي :‬                                   ‫قم بفت‬
‫>"‪<html dir ="rtl‬‬
‫?<‬
‫{ ))‪If (isset($name‬‬
‫; ‪" . $name‬مرحبا بك يا" ‪Echo‬‬
 ‫' ‪Echo‬‬
‫>‪<br‬‬
‫>"‪<form method="POST" action="quiz3.php" dir="rtl‬‬
‫">"’.‪<input type="hidden" name = "thename" value = "’.$name‬‬
   ‫>‪ </p‬من هو أول الخلفاء الراشدين ؟‬
   ‫"أبوبكر الصديق"=‪<p dir="rtl"><input type="radio" value‬‬
‫أبوبكر>"‪name="khlifa‬‬
   ‫/<. الصديق‬p>
   <p dir="rtl"><input type="radio" value="‫ "عمر بن الخطاب‬checked
name="khlifa">‫عمر‬
   ‫/<بن الخطاب‬p>
   <p dir="rtl">‫/<من هو الفاروق ؟‬p>
   <p dir="rtl"><input type="radio" name="faroq" value=" ‫عمر بن‬
‫الخطاب">عمر بن‬
   ‫/<الخطاب‬p>
   <p dir="rtl"><input type="radio" name="faroq" value="‫"سالم‬
checked>‫سالم بن‬
   ‫/<عامر‬p>
<input type ="submit" value = "‫ "إرسال‬dir="rtl">
</form>' ;
}
else
{
echo "‫; "غير مصرح لك بدخول هذه الصفحة‬
}
?>
                                                       quiz2.php ‫احفظها باسم‬

                                                      : ‫قم بفت المفكرة واكت الكود التالي‬
<?
If ((isset($thename)) && (isset($khlifa)) && (isset($faroq)))
{
echo '‫$ .' لقد انتهت المسابقه يا‬thename ;
$range=0;
$co = 0;
         if ($khlifa =="‫{ )"أبوبكر الصديق‬
         $range=$range+10;
         $co = $co +1;
         }
         if ($faroq =="‫)"عمر بن الخطاب‬
              {
              $range=$range+10;
              $co=$co+1;
              }
           if ( $range < 10)
           {
           echo "‫;"ليس هناك أي إجابة صحيحة‬
           }
           else
           {
           echo "<br>"."‫$ . "= عدد االسئلة التي أجبت عليها‬co ;
           echo "<br>" . "‫$ . " الدرجة التي حصلت عليها‬range ;
           }
}
?>
                           ‫قم بوضا الملفات الثالثة السابقة في مجلد السيرفر ثم قم بتشغيلها‬
                                                                                             ‫الشرح‬
‫قمت في هذا المثال بم اولة صنا مكنكة تواصل للبيانات ، بميني أنني أحاول أن أقـوم باالحتفـاظ بالبيانـات‬
‫عبر الثالث صف ات بشـكل متواصـل ، الحـ أننـي كنـت اختبـر فـي 2‪ quiz‬و 3‪ quiz‬باختبـار المتغيـرات قبـل‬
‫طباعة أي شي فقد يقوم المستخدم مثال ا باالحتفاظ باليف ة التي وصل إليها في المفضلة ثم يقوم باكمال‬
‫المسابقة في وقت آخر ولكني ال اريد للف بل أريد ان أ يل وقتهـا م ـدوداا (طبيـاا هـذا الكـالم سي يـل إلا‬
‫كانت المسابقة طويلة) لذلف فإنني في كل عند االنتقال من صف ة إلى صف ة اقوم باختبار إن كانت ميا‬
‫هذه القيم مو ودة والح أنني كنت احتف دوماا بقيم المتغيـرات فـي متغيـرات ديـدة فـي حقـول مخفيـة‬
‫وكلما كان عدد الميلومات أكبر في كل مره كان عدد ال قول المخفية أكثر ، إن لهذه الطريقة أيضا مشـاكلها‬
‫فقد يفت المستخدم كود الـ‪ html‬ويقوم بتف ص كيفية مالحقتل عبر المسابقة وقد يينا هو الكود في وقت‬
‫الحق لكي يستطيا اكمال المسابقة بهذه الخدعة المـاكرة ... لـذلف يفضـل أن ال تقـوم بـذلف وتقـوم بجيـل‬
‫المسألة السابقة اكثر تيقيداا باستخدام الـ‪ regular expression‬بم اولة تلغـيم البيانـات بواسـطتل ومـن ثـم‬
                                                   ‫فف هذا التلغيم في اليف ات التي تيل اليها البيانات .‬


                                           ‫2- ارسال بيانات بواسطة ‪query strings‬‬
‫نستطيا ارسال بيانات بسيطة بواسطة االستيالمات التي نقوم بإضافتها الـى اسـم اليـف ة فـي األعلـى‬
‫متبوعة بـ(؟) عالمة استفهام ثم اسم متغير وقيمتل وإلا كان هناك أكثر من متغير يتم الربط بينهم بيالمـة &‬
                                                               ‫ورا ا درس النمال لمزيد من الميلومات .‬

                                         ‫قم بيمل صف ة وسمها ‪ ask.php‬وقم بكتابة الكود التالي فيها :‬

‫?<‬
‫{ ))‪If (isset($ask‬‬
  ‫{ )‪If ($ask == login‬‬
    ‫;"تم تسجيل الدخول إلى الصفحة" ‪Echo‬‬
  ‫}‬
‫}‬
‫{ ))‪if (!isset($ask‬‬
‫;”>‪" . “<br‬لم يتم تسجيل الدخول إلى الصفحة" ‪echo‬‬
‫;">‪ </a><br‬اضغط هنا ليتم تسجيل دخولك>‪Echo "<A HREF=$PHP_SELF?ask=login‬‬
‫}‬
‫>?‬
‫قم بتجربة هذا المثال على موقا يدعم ‪ PHP‬على نظام تشغيل لينـوكس إلا لـم ييمـل بشـكل يـد علـى‬
                                                                                    ‫الوندوز‬

‫الح أننا في أول الولو الـى اليـف ة لـم نسـتخدم أي اسـتيالمات وعنـد الضـغط علـى الـرابط قـام الـرابط‬
‫بارسال قيمل المتغير الذي يقوم ال‪ PHP‬باختبارها فالا و د انـل قـد تـم ارسـالها (بواسـطل الـرابط الـذي تـم‬
‫الضغط عليل) قام بطباعـة (تـم تسـجيل الـدخول) والا لـم يجـدها قـام بطباعـة (لـم يـتم تسـجيل الـدخول )‬
                                            ‫باإلضافة إلى طباعة الرابط الذي ي توي على المتغير في طياتل‬
                                                       ‫3- الكوكيز أو الكعكعات (‪(cookies‬‬

‫إلاا ماهي الكوكيز ، الكوكيز هي عبارة عن بيض الميلومات أو القطا اليغيرة من البيانات يـتم االحتفـاظ بهـا‬
‫في هاز اليميل لكي يتم االحتفاظ بها عند الزيارات المختلفة للمستخدم (اليميل) ، أنت ال تقوم باالحتفاظ‬
                                               ‫فيها بقيم ضخمة لكنف تستفيد منها في أشيا أخري مثل :‬

‫1 - يل لكل مستخدم األلوان الخاصة التي يري فيهـا صـف تف ( أي أن تجيـل للمسـتخدم مـثال ا إعـدادات‬
                                                                        ‫األلوان الخاصة لر ية موقيف ) .‬
‫2 - يل مفتاح للمستخدم لكي يستطيا بل الـت كم فـي بياناتـل الخاصـة عنـد زياراتـل لموقيـف فـي مـرات‬
                                                                                               ‫اخري.‬

‫الكوكيز مفيد لالستخدام في األشيا البسـيطة والغيـر خطيـرة ، لكنـل اآلن يسـتخدم بشـكل سـ ، مثـل‬
‫استخدامل مثال ا في ميرفة ميلومات عن المستخدم بدون علم منل ، أو تخـزين كميـات كبيـرة مـن البيانـات‬
                                                ‫فيل والتي من األ در أن يتم حفظها في ملف على السيرفر .‬
                     ‫ـ‬                   ‫ـ‬                           ‫ـ‬            ‫ـ‬                  ‫ـ‬
‫ويك ـون اســتخدامل مفي ـدا عنــدما تض ـمن أن ميــا زوار موقيــف تس ـم متيــف اتهم ب ـالكوكيز (مثــل طلب ـة‬
                                                                           ‫المدارس أو شبكات انترانت ) .‬
                        ‫عندما يكون فقط ألشيا بسيطة الضرر منها عند عدم السماح بالكوكيز بجهاز اليميل .‬


                                                                                     ‫بدايتك مع الكيوكيز‬

                                               ‫قبل أن نبدأ علينا ميرفة بيض األساسيات عن الكيوكيز‬
‫الكوكيز عبارة عن قطية صغيرة من البيانات التي تستخدم لتخزين اسـم متغيـر وقيمتـل مـا ميلومـات حـول‬
                                                              ‫الموقا التي أتت منل وتاريخ انتها ها .‬

‫الكوكيز عبارة عن تقنية للتخزين من هة اليميل (‪ )client-side storage‬تتخزن في ملفات في هاز اليميل‬

                                       ‫يتم اليبور إلى هذه الكوكيز ومس ها من المكان التي ارسلت منل .‬

‫عندما يطل المستيرض صف ة من السيرفر وهذه اليف ة تقوم بتتخزين كوكيز فـإن السـيرفر يقـوم باخبـار‬
                                                  ‫المستيرض بأنل سيقوم بوضا كوكيز لالستيمال الحقا .‬

‫اليف ة في مرة آخري يقوم المسـتيرض بارسـال البيانـات التـي تـم إنشـا ها سـابقاا عنـد‬      ‫عندما يتم طل‬
                                                                                       ‫طل اليف ل .‬
‫يتم انتها مده الكوكيز بإنتها وقت صالحيتها االم ـدد مـن قبـل السـيرفر ويـتم مسـ ها فوريـاا عنـد اغـالق‬
                                                       ‫اليف ة إلا كان وقت صالحيتها صفراا من الثواني .‬

‫بإختيار عندما ييطي السيرفر الكوكيز للمستيرض فإنل يقول لف هذا شي اتذكرك بل في وقـت الحـق (قـد‬
                  ‫يكون هذا الوقت من ضغط رابط آخر في اليف ة التى زرتها حتي بيد أسبوع أو أكثر ) .‬

  ‫يقوم السيرفر بإرسال الكوكيز عبر الـ‪ HTTP Headers‬الذي يتم إرسالل قبل أي مخر من مخر ات الـ‪html‬‬
‫والمستيرض أيضا يقوم بإرسال الكوكيز عبر الـ‪ HTTP Header‬باإلضافل إلى أن المستيرض يتيرف على مـن‬
‫سيقوم بإرسال الكوكيز فلو كانت الكوكيز مثال ا مرسلة من قبل الموقا ‪ www.php.net‬فإنل لن يقوم بإرسالها‬
                                                                 ‫إلى موقا ‪. www.phpbuilder.com‬‬

‫باستطاعتف عند إنشا الكوكيز ت ديد مسار يتم ارسال الكوكيز لكي يتم اقتيار عملية اليبـور إلـى الكـوكيز‬
                                                                                  ‫إلى أماكن ميينة .‬
                  ‫قبل أن نقوم بوضا كود بسيط سنقوم اآلن بتيريف كيفية تخزين الكوكيز وكيفية قرا تها :‬
‫كون الـ‪ PHP‬لغة حديثل ليمل سكربتات وي فإنها تأتي بدعم كامـل للكـوكيز بواسـطة الدالـة )(‪setcookie‬‬
                             ‫باستثنا أنف عند استيمالها يج استيمالها قبل طباعة أي مخر ات ‪. html‬‬

     ‫:‬   ‫تأخذ الدالة )(‪ setcookie‬ثالث ميامالت ، الثالثة األولى هي األهم و األمثل استخداماا وهي بالترتي‬

                                                          ‫‪ ‬قيمة حرفية يتم تخزينها كاسم للمتغير‬
                                                     ‫‪ ‬قيمة حرفية يتم تخزينها كقيمة لذلف المتغير‬
                                    ‫‪ Unix timestamp ‬الذي يقوم باإلشارة إلى تاريخ انتها الكوكيز‬
‫‪ Unix timestamp‬عبارة عن رقـم صـ ي ال ي تـوي علـى فواصـل عشـرية يقـوم ب سـاا الثـواني مـن‬
‫منتيف ليلة 0791/10/10 . وإلا كنا نريد مثال ا أن نقوم بمس الكوكيز بيد ساعة من تخزينـل فإننـا نقـوم‬
‫باستيمال الدالة )(‪ time‬التي تقوم ب ساا الــ‪ timestamp‬ثـم نضـيف عليـل الوقـت الـذي نريـده وفـي‬
‫حالتنا الساعة تساوي 3303 ثانية وعلى للف سـنقوم بإضـافة نـاته الدالـة ‪ time‬علـى 3303 لكـي يـتم‬
                                                                     ‫مس الكوكيز بيد ساعة واحدة !‬

‫الثالث اليوامل األخري التي يتم ستخدامها أيضا فـي الكـوكيز ولكنهـا نـادرة االسـتخدام ولـن نناقشـها فـي‬
                                                                                    ‫موضوعنا هذا هي :‬
‫‪ ‬المسار الذي يتم إرسال الكوكيز إليل فلو تم فت نفس اليف ة مـن نفـس الموقـا ولكـن مـن مسـار‬
‫اخـر ( مـثال ا المسـار كـان ‪ pag\url\one‬وتـم تغييـره إلـى ‪ page\url\two‬فـان المسـتيرض لـن يقـوم‬
   ‫ـ‬    ‫ـ‬       ‫ـ‬         ‫ـ‬                 ‫ـ‬    ‫ـ‬     ‫ـ‬                 ‫ـ ـ‬           ‫ـ‬    ‫ـ‬
               ‫بارسال البيانات إلي اليف ة ألنل تم ت ديد المسار الذي سيتم ارسال الكوكيز اليل )‬
‫‪ ‬الدومين الذي سيتم إرسال البيانات إليل وهو مفيد في حالة ما إلا كان هناك أكثـر مـن دومـين تريـد‬
                                                                             ‫ارسال الكوكيز اليل‬
   ‫‪ ‬متغير من نوع ‪ integer‬يتم اإلشارة إليل بـ ‪ secure‬يتم في حالة استخدام عمليات تشفير بالـ ‪SSL‬‬

‫اليبور الى الكوكيز بسيط داا فالمتغير الذي يتم ارسالل يتم تخزينل ضمن المتغيرات اليامة (‪ )global‬وعند ذ‬
             ‫فإنل لو كان لدينا كوكيز اسمل ‪ ahmed‬فإن قيمتل توضا مباشرة في متغير اسمل ‪!! $ahmed‬‬

‫يمكننا مس الكوكيز بأكثر من طريقة ، بـالطبا فـإن المسـتخدم يسـتطيا مسـ الكـوكيز وتغييـر م توياتهـا‬
   ‫بنفسل ولكن في حالة ما إلا أردنا أن نجيل السيرفر يقوم بمس ها فإننا نستخدم إحدي هاتين الطريقتين‬

                                                                ‫إما أن نقوم بإخبار السيرفر بوقت قديم :‬
‫?<‬
‫;)999-)(‪Set cookie (“ahmed” , “0”, time‬‬
‫>?‬

                                                          ‫الكوكيز بكتابة اسمل فقط :‬   ‫وإما القيام بمس‬
‫?<‬
‫;)”‪Setcookie (“ahmed‬‬
‫>?‬
                                                                           ‫مثال لتخزين وقراءة كوكيز‬
                                                                   ‫قم بفت المفكرة واكت الكود التالي :‬
‫?<‬
‫;)0063+)(‪If ($thename) setcookie ("rname", $thename, time‬‬
‫>"‪Echo '<form method="post‬‬
‫>"‪<input type ="text" name="thename‬‬
‫>"تسجيل"=‪<input type="submit" value‬‬
‫;'>‪</form‬‬
‫;">‪". " ". $thename ."<br><br‬قيمه المتغير الذي لديك" ‪echo‬‬
‫; ‪ =" . $rname‬قيمة الكوكيز" ‪echo‬‬
‫>?‬

                                                                                                  ‫الشرح‬
                                                                           ‫عند تشغيل اليف ل الول مره‬
‫عند تشغيلف لليف ة سيتم اختبار ما إلا كان هناك متغير باالسم ‪ $thename‬فإلا تم ال يول عليل فسيتم‬
   ‫وضا قيمتل في كوكيز باسم (‪( )rname‬وطبيا لن يتم ال يول عليل في أول مرة ألننا لم نقم بارسال أي‬
                             ‫بيناات بيد) وبيد للف طباعة نمول من مربا نص واحد وزر إلرسال الميلومات .‬
    ‫ويتم طباعة قيمة المتغير إلا كان هناك أي متغير تم ارسالل باسم ‪ $thename‬ويتم ف ص قيمة الكوكيز‬
                                                   ‫‪ $rname‬وطباعتها وبالطبا ال يو د حتي اآلن أي كوكيز .‬
                                                                                          ‫المرحلة الثانية‬
  ‫اآلن قم بكتابة أي شي في مربا النص (اكت اسمف مثال ا) ثم قم بضغط زر االرسال سيتم ارسال البيانات‬
 ‫الى نفس اليف ة ولكن هذه المرة سيتم تسجيل قيمة المتغير الذي ي مل البيانات في الكوكيز (‪)rname‬‬
  ‫وبيد للف سيتم طباعة النمول بشكل عادي وسيتم طباعة قيمة المتغير ‪ $thename‬ولكن لن يتم طباعة‬
       ‫قيمة المتغير ‪ $rname‬ألننا فقط قمنا بتسجيلل ولم يتم إرسالل عند طل اليف ة (ألننا نيرف أنل يتم‬
      ‫ارسال الكوكيز عند طل اليف ة وهذه المرة عندما طلبنا اليف ة لم يكن الكوكيز مو وداا باألصل فلم‬
                                        ‫يرسلل السيرفر وقمنا ن ن بتسجيلل استيداداا للمرحلة القادمة ) .‬
                                                                                          ‫المرحلة الثالثة‬
        ‫في هذه المرة سيكون الكوكيز مو وداا فسيتم ارسالل على هيئة متغير ويتم ارسالل ومن ثم طباعة‬
                                    ‫النمول وقيمل المتغير ‪ $thename‬وقيمة الكوكيز الذي يو د بجهازك !‬

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:0
posted:1/25/2013
language:
pages:7