فرم و درخواست · ۹ دقیقه مطالعه

Superglobals: GET، POST و SERVER

PHP چند آرایهٔ سراسریِ آماده دارد که همه‌جا در دسترس‌اند:

  • $_GET — داده‌های query string (?q=...)
  • $_POST — داده‌های فرمِ POST
  • $_SERVER — اطلاعات سرور و درخواست
  • $_FILES — فایل‌های آپلودی
  • $_SESSION, $_COOKIE

خواندن GET

آدرس: search.php?q=laravel

$query = $_GET['q'] ?? '';   // ?? اگر نبود، خالی
echo "جست‌وجو: " . htmlspecialchars($query);

خواندن POST

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $email = $_POST['email'] ?? '';
}

اطلاعات SERVER

$_SERVER['REQUEST_METHOD'];   // GET یا POST
$_SERVER['REQUEST_URI'];      // آدرس
$_SERVER['REMOTE_ADDR'];      // IP کاربر

⚠️ قانون طلایی امنیت

هرگز به ورودی کاربر اعتماد نکن. همیشه:

  1. وجودش را چک کن (?? '').
  2. هنگام نمایش، escape کن (htmlspecialchars).
  3. هنگام کوئری، از prepared statement استفاده کن.

GET برای خواندن (جست‌وجو)، POST برای تغییر (ثبت، ورود).

برای ثبت پیشرفت و کسب XP وارد شو.

ورود به میدان
پردازش و اعتبارسنجی فرم ←