$_POST

در PHP، $_POST یک Superglobal است که داده‌های ارسالی از فرم‌ها با متد POST را دریافت می‌کند.
این آرایه در همه جای برنامه قابل دسترسی است و نیازی به global ندارد.

1️⃣ نمونه ساده فرم

<?php if(isset($_POST['submit'])){ $username = $_POST['username']; $password = $_POST['password']; echo "Username: " . htmlspecialchars($username) . "<br>"; echo "Password: " . htmlspecialchars($password); } ?> <form method="post" action=""> Username: <input type="text" name="username"><br> Password: <input type="password" name="password"><br> <input type="submit" name="submit" value="Login"> </form>

🔹 $_POST['username'] و $_POST['password'] داده‌های فرم را دریافت می‌کنند.

2️⃣ ویژگی‌های $_POST

  • داده‌ها در URL نمایش داده نمی‌شوند (برخلاف $_GET).

  • مناسب برای فرم‌های ورود، ثبت‌نام و ارسال اطلاعات حساس.

  • همیشه قبل از استفاده پاکسازی و validate کنید.

3️⃣ دسترسی به تمام داده‌های POST

<?php print_r($_POST); ?>

📌 اگر فرم زیر ارسال شود:

<form method="post"> Name: <input type="text" name="name" value="Ali"> Age: <input type="text" name="age" value="25"> <input type="submit"> </form>

خروجی print_r($_POST):

Array ( [name] => Ali [age] => 25 )

4️⃣ نکات امنیتی

  • استفاده از ()htmlspecialchars برای جلوگیری از XSS

$name = htmlspecialchars($_POST['name']);
  • بررسی وجود کلیدها با ()isset

if(isset($_POST['submit'])){ // پردازش فرم }

📌 جمع‌بندی

  • $_POST داده‌های فرم با متد POST را دریافت می‌کند.

  • مناسب برای ارسال اطلاعات حساس یا طولانی.

  • همیشه داده‌ها را پاکسازی، validate و بررسی کنید.