Post و Get در PHP

خمونطور که عملا تو درس فرم ها دیدید، برای جمع آوری اطلاعات ارسال شده توسط تگ form از متغیرهای از پیش تعریف شده‌ی POST_$ و GET_$ استفاده میکنیم.

 

GET_$

از GET_$ برای دریافت اطلاعاتی که با متد GET که در تگ form مشخص شده استفاده میکنیم.

  • هنگامی که متد ارسال اطلاعات در تگ form رو روی GET تنظیم کنید (“method=”GET) اطلاعات در URL نمایش داده میشن بنابراین برای ارسال اطلاعات مهم مثل پسورد نباید از این متد استفاده بشه.
  • برای ارسال مقادیر بزرگ نباید از این متد استفاده بشه چون طول اطلاعات ارسالی نمیتونه بیشتر از ۲۰۰۰ کاراکتر باشه. در صورت رعایت نکردن این مهم با خطای Request-URI Too Large مواجه میشید.

POST_$

از POST_$ برای دریافت اطلاعاتی که با متد POST که در تگ form مشخص شده استفاده میکنیم.

  • برخلاف متد GET، در متد POST اطلاعات در URL نمایش داده نمیشن پس برای ارسال اطلاعات مهم مناسبه.
  • با استفاده از این متد میتونید حجم بسیار زیادی از اطلاعات رو ارسال کنید. البته بصورت پیشفرض حداکثر اطلاعات میتونه ۸ مگابایت باشه که در فایل php.ini مشخص شده، برای کم کردن محدودیت میتونید مقدار post_max_size رو افزاریش بدید.

مثال ها

مثال اول

ارسال اطلاعات با متد GET و نحوه دریافت اون با متغیر از پیش تعریف شده GET_$.

<form action="welcome.php" method="get">
Name: <input type="text" name="fname">
Age: <input type="text" name="age">
<input type="submit">
</form>

کد مربوط به دریافت اطلاعات در فایل Welcome.php:

Welcome <?php echo $_GET["fname"]; ?>.<br>
You are <?php echo $_GET["age"]; ?> years old!

اطلاعات در URL چیزی شبیه به این خواهد بود:

http://tc.softafzar.net/welcome.php?fname=reza&age=25

 

نکته: به اطلاعات بعد از علامت “?”  Query String گفته میشه.

 

مثال دوم

ارسال اطلاعات با متد POST و نحوه دریافت اون با متغیر از پیش تعریف شده POST_$.

<form action="welcome.php" method="post">
Name: <input type="text" name="fname">
Age: <input type="text" name="age">
<input type="submit">
</form>

کد مربوط به دریافت اطلاعات در فایل Welcome.php:

Welcome <?php echo $_POST["fname"]; ?>!<br>
You are <?php echo $_POST["age"]; ?> years old.

اطلاعات در URL:

http://tc.softafzar.net/welcome.php

بغیر از دو متغیر POST_$ و GET_$ ، متغیر دیگه ای هم برای دریافت اطلاعات ارسال شده توسط هر متدی هم با نام  REQUEST_$ داریم. این متغیر میتونه بجای POST_$ و GET_$ و COOKIE_$ استفاده بشه، البته معمولا استفاده از این متغیر رو توصیه نمیکنن.

 

5 دیدگاه برای «Post و Get در PHP»

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

به سوال زیر پاسخ بدهید *