‎‎مديريت فرمPHP Form Handling

Previous >    <Next  

‎براي جمع آوري اطلاعات فرم ها از متغير هاي ابر جهاني $_GET (Supperglobals) ‎و‎$_POST ‎ استفاده ميشود

‎مثال ـ در زير برنامه فرم ساده ايست كه ، يكHTML فرم را با دو فيلد ورودي ويك كليدSubmit ‎نمايش ميدهد.

<html>
<body>

<form action="welcome.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html> 

--(go to editor for change code and run)

‎هنگاميكه كاربر فرم بالا تكميل مي نمايد، ودكمهsubmit را كليك ميكند، اطلاعات فرم به اسكريپت wellcome.php‎براي پردازش ارسال ميگردد .ارسال اطلاعات بامتد HTTP POST ميباشد . ‎براي نمايش داده هاي ارسالي درwellcome.php واز دستورecho استفاده شده است .

‎‎برنامهwellcome.php مطابق زير است .

<html>
<body>

Welcome <?php echo $_POST["name"]; ?><br>
Your email address is: <?php  echo $_POST["email"]; ?>

</body>
</html> 

‎‎خروجي اين مثال مطابق زير است.

‎Welcome John

‎Your email address is John.doe@example.com

‎‎همين نتيجه را ميتوان با متدHTTP GET بدست آورد .

‎‎مثال ـ فرم فبلي با متدGET

<html>
<body>

<form action="welcome_get.php" method="get">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>

--(go to editor for change code and run)

‎‎فايلwelcom_get.php كه اطلاعات فرم را دريافت ميكند مطا بق زير است .

<html>
<body>

Welcome <?php echo $_GET["name"]; ?><br>
Your email address is: <?php  echo $_GET["email"]; ?>

</body>
</html> 

‎كد بالا براي دريافت اطلاعات فرم بسيار ساده در نظر گرفته شده است.در اين جا حفاظت از اطلاعات ‎و پيش گيري از عوامل تخريب اطلاعات منظور نشده است، كه وجودآنها با اهميت مي باشد. ‎بجز موارد امنيتي بالا، كنترل اطلاعات وارد شده توسط كاربر هم بايستي در فرم و فايل يا ‎اسكريپ در يافت كننده اطلاعات پيش بيني گردد .باين مجموعه ‎Form Validation‎‎گويند.

‎POST‎وGETمقابل هم

‎هر دو موردPOST وGET آرايه ايجاد ميكنند . ‎آرايه‎$_POST‎ با متدPOST وآرايه ‎$_GET‎ با متدGET ‎ايجاد ميشوند .هر عنصر آرايه ها شامل زوج مقدار ونام فيلد است .نام در مشخصه name="fieldname"; ‎يعنيfieldname بعوان كليد عنصر آرايه ميباشد.

‎آنچه كه از هر دو متد منشعب ميشود يعني‎$_GET‎ و‎$_POST ‎ بعنوان ‎متغيرهاي ابر جهاني ميباشند وآنها بدون محدوديت در دامنه ، قابل دسترس بوده وميتوان ‎از آنها در اسكريپت ها ، توابع وكلاسها استفاده. كرد.

‎متغير‎$_GET‎يك آرايه ايست كه، ازطريق پارامترهايurl به اسكريپت جاري منتقل ‎ميشود.

‎متغير‎$_POST‎ يك آرايه ايست كه از طريق متد HTTP post به اسكريپت جاري منتقل ‎ميشود.

‎‎موقعيت استفاده ازGET

‎اطلاعات ارسالي از طريق متد فوق براي افراد قابل مشاهده است .چون نام ومقادير متغير ها درurl ‎ظاهر ميشود .اين روش در ميزان اطلاعات محدويت داشته وبيشتر از2000 كراكتر نميتوان ارسال نمود. ‎اما چون اطلاعات هنگام ارسال درurl ظاهر ميشود، براي كنترل كمك ومفيد خواهد بود. ‎ميتوان اين روش براي اطلاعات غير حساس استفاده كرد .اما براي ارسال رمز عبور مناسب نيست.

‎‎موقعيت استفاده ازPOST

‎اطلاعات ارسالي از روش فوق براي ديگران قابل مشاهده نيست، جون همه نام ومقدار ها در بدنه يك HTTP request‎قرار دارد، و داراي محدوديت نميباشد . ‎چون اطلاعات شامل متغير ومقدار درurl قرار ندارد، نشانك كردن صفحه امكان پذير نيست .


Previous >    <Next