PHP – آرایه $_GET
PHP - $_GET
$_GET
یک متغیر فوقجهانی در PHP است که حاوی آرایهای از متغیرهای دریافت شده از طریق متد HTTP GET میباشد.
دو روش اصلی برای ارسال متغیرها از طریق متد HTTP GET وجود دارد:
- رشتههای پرس و جو (Query Strings) در URL
- فرمهای HTML
رشته پرس و جو در URL
رشته پرس و جو دادههایی است که در انتهای یک URL اضافه میشوند. در لینک زیر، همه چیز بعد از علامت ?
بخشی از رشته پرس و جو است:
<a href="demo_phpfile.php?subject=PHP&web=W3schools.com">Test $GET</a>
رشته پرس و جو بالا حاوی دو جفت کلید/مقدار است:
subject=PHP
web=W3schools.com
در فایل PHP میتوانیم از متغیر $_GET
برای جمعآوری مقدار رشته پرس و جو استفاده کنیم.
مثال
فایل PHP demo_phpfile.php
:
<html>
<body>
<?php
echo "Study " . $_GET['subject'] . " at " . $_GET['web'];
?>
</body>
</html>
$_GET در فرمهای HTML
یک فرم HTML اطلاعات را از طریق متد HTTP GET ارسال میکند اگر ویژگی method
فرم به “GET” تنظیم شده باشد.
برای نشان دادن این موضوع، با ایجاد یک فرم HTML ساده شروع میکنیم:
فرم HTML
<html>
<body>
<form action="welcome_get.php" method="GET">
Name: <input type="text" name="name">
E-mail: <input type="text" name="email">
<input type="submit">
</form>
</body>
</html>
هنگامی که کاربر بر روی دکمه ارسال کلیک میکند، دادههای فرم به فایل PHP مشخص شده در ویژگی action
تگ <form>
ارسال میشوند.
فیلدهای فرم به همراه ورودی شما به فایل PHP به عنوان رشتههای پرس و جو ارسال میشوند:
welcome_get.php?name=John&email=john@example.com
در فایل اکشن میتوانیم از متغیر $_GET
برای جمعآوری مقدار فیلدهای ورودی استفاده کنیم.
مثال
کد PHP درون صفحه welcome_get.php
:
<html>
<body>
Welcome <?php echo $_GET["name"]; ?><br>
Your email address is: <?php echo $_GET["email"]; ?>
</body>
</html>
نکات امنیتی
هنگام استفاده از $_GET
، مطمئن شوید که ورودیها را اعتبارسنجی و تمیز کنید تا از حملات مانند XSS و SQL Injection جلوگیری کنید. برای این منظور، میتوانید از توابعی مانند htmlspecialchars()
برای تمیز کردن ورودیها استفاده کنید:
$name = htmlspecialchars($_GET["name"]);
$email = htmlspecialchars($_GET["email"]);
برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید. صفحه ورود و ثبت نام