آموزش متد GET در php و نکات کاربردی

متد GET یکی از روشهای ارسال داده از مرورگر به سرور در فرمهای ارتباطی وب است که در زبان برنامهنویسی PHP استفاده میشود. این متد، یکی از دو متد پرکاربرد در پروتکل HTTP است که برای انتقال اطلاعات بین مرورگر و سرور استفاده میشود، متد دیگر POST است. متد GET معمولاً برای درخواست اطلاعات از سرور استفاده میشود، به عنوان مثال، زمانی که یک کاربر یک صفحه وب را مشاهده میکند و اطلاعات خاصی را از سرور میخواهد، از جمله اطلاعاتی که در یک فرم جستجو وارد میکند یا پارامترهایی که برای فیلتر کردن اطلاعات مورد نیاز است.
یکی از ویژگیهای بارز متد GET این است که اطلاعات ارسالی به سرور به صورت Query String در URL نمایش داده میشوند. این بدین معناست که پارامترها و مقادیر متناظر با آنها به صورت کلید=مقدار با & از هم جدا شده و به انتهای آدرس URL اضافه میشوند.
یکی از مزایای استفاده از متد GET این است که این اطلاعات به راحتی از طریق URL قابل مشاهده هستند، که میتواند در دسترسی به اطلاعات برای کاربران و حتی توسعهدهندگان مفید باشد. همچنین، استفاده از متد GET منجر به ذخیره سادهتر و بهینهتر اطلاعات در برخی مواقع میشود، زیرا هیچ بدنهای (Body) درخواستی برای ارسال اطلاعات لازم نیست و تنها با اضافه کردن پارامترها به URL، اطلاعات مورد نظر ارسال میشوند.
متد GET یکی از روشهای مهم برای ارسال اطلاعات از مرورگر به سرور در PHP است که عموماً برای درخواست اطلاعات از سرور استفاده میشود. اطلاعات ارسالی به سرور به صورت Query String در URL نمایش داده میشوند که این امر میتواند در دسترسی به اطلاعات برای کاربران و توسعهدهندگان مفید باشد.
متد GET برای ارسال اطلاعات از طریق آدرس صفحه استفاده میشود. یعنی اطلاعاتی که کاربر میفرستد معمولاً در نوار آدرس مرورگر دیده میشوند.
مثال ساده
فرم HTML:
<form method="get" action=""> <input type="text" name="name"> <button type="submit">ارسال</button> </form>
اگر کاربر نام Ali را وارد کند، آدرس صفحه ممکن است شبیه این شود:
page.php?name=Ali
دریافت اطلاعات در PHP
<?php $name = $_GET["name"] ?? ""; echo $name; ?>
متغیر آماده $_GET اطلاعاتی را که با روش GET ارسال شدهاند دریافت میکند.
مثال کاملتر
<?php if (isset($_GET["name"])) { $name = $_GET["name"]; if (empty($name)) { echo "لطفاً نام را وارد کنید"; } else { echo "سلام " . htmlspecialchars($name); } } ?>
GET چه زمانی کاربرد دارد؟
GET برای مواردی مثل این مناسب است:
- جستجو
- فیلتر محصولات
- شماره صفحه
- دستهبندی
- ارسال شناسه یک مطلب
مثلاً:
products.php?category=laptop
یا:
article.php?id=25
تفاوت ساده GET و POST
GET: اطلاعات معمولاً در آدرس دیده میشوند.
POST: اطلاعات در آدرس نمایش داده نمیشوند.
مثلاً GET:
search.php?q=php
به همین دلیل GET برای رمز عبور و اطلاعات حساس مناسب نیست.
چند پارامتر در GET
میتوان چند مقدار را همزمان ارسال کرد:
product.php?id=10&color=red
و در PHP:
$id = $_GET["id"] ?? "";
$color = $_GET["color"] ?? "";
علامت & پارامترها را از یکدیگر جدا میکند.
نکته مهم
اطلاعاتی که از $_GET دریافت میکنید قابل تغییر توسط کاربر هستند؛ بنابراین نباید بدون بررسی و اعتبارسنجی به آنها اعتماد کنید.
جمعبندی
روند کار GET:
فرم یا لینک → ارسال اطلاعات در آدرس → دریافت با $_GET → بررسی → پردازش
برای یادگیری، ابتدا یک فرم جستجوی ساده بسازید که کلمه جستجو را با GET ارسال کند.
