PHP formalar bilan ishlash


ULASHISH

PHP - oddiy HTML formasi

PHP supergloballari $_GET va $_POST forma ma’lumotlarini yig‘ish uchun ishlatiladi.

Quyidagi misolda ikkita kiritish maydoni va yuborish tugmasi bo‘lgan oddiy HTML formasi ko‘rsatilgan:

Misol

Metod = "post" bilan HTML formasi:

<html>
<body>

<form action="welcome.php" method="post">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>
Misolni ishga tushirish »

Foydalanuvchi yuqoridagi shaklni to‘ldirib, jo‘natish tugmasini bosganida, forma ma’lumotlari “welcome.php” nomli PHP fayliga ishlov berish uchun yuboriladi. Shakl ma’lumotlari HTTP POST usuli bilan yuboriladi.

Taqdim etilgan ma’lumotlarni ko‘rsatish uchun siz shunchaki barcha o‘zgaruvchilarni aks ettirishingiz mumkin.

"welcome.php" quyidagicha ko‘rinadi:

<html>
<body>

Welcome <?php echo $_POST["name"]; ?><br>
Your email address is: <?php echo $_POST["email"]; ?>

</body>
</html>

Chiqish shunday bo‘lishi mumkin:

Welcome John
Your email address is john.doe@example.com

Xuddi shu natijaga HTTP GET usuli yordamida ham erishish mumkin:

Misol

Xuddi shu misol, lekin metod "post" o‘rniga "olish" ga o‘rnatilgan:

<html>
<body>

<form action="welcome_get.php" method="get">
Name: <input type="text" name="name"><br>
E-mail: <input type="text" name="email"><br>
<input type="submit">
</form>

</body>
</html>
Misolni ishga tushirish »

va "welcome_get.php" quyidagicha ko‘rinadi:

<html>
<body>

Welcome <?php echo $_GET["name"]; ?><br>
Your email address is: <?php echo $_GET["email"]; ?>

</body>
</html>

Yuqoridagi kod juda oddiy va u hech qanday shaklni tekshirishni o‘z ichiga olmaydi.

Skriptingizni zararli koddan himoya qilish uchun shakl ma’lumotlarini tekshirishingiz kerak!

PHP shakllarini qayta ishlashda XAVFSIZLIK haqida o‘ylang!

Bu sahifada hech qanday shakl tekshiruvi mavjud emas, u faqat shakl ma’lumotlarini qanday yuborish va olish mumkinligini ko‘rsatadi.

Biroq, keyingi sahifalar xavfsizlikni hisobga olgan holda PHP shakllarini qanday qayta ishlashni ko‘rsatib beradi! Shakl ma’lumotlarini to‘g‘ri tekshirish sizning shaklingizni xakerlar va spamerlardan himoya qilish uchun muhimdir!



GET va POST

GET ham, POST ham massiv yaratadi (masalan, massiv (key1 => qiymat1, kalit2 => qiymat2, kalit3 => qiymat3, ...)). Bu massiv kalit/qiymat juftlarini saqlaydi, bu yerda klavishlar forma boshqaruv elementlarining nomlari va qiymatlar foydalanuvchi tomonidan kiritilgan ma’lumotlardir.

GET ham, POST ham $_GET va $_POST sifatida qabul qilinadi. Bular supergloballardir, ya’ni ular qamrovidan qat’i nazar, har doim foydalanish mumkin - va siz ularga biron bir maxsus ish qilmasdan istalgan funksiya, class yoki fayldan kirishingiz mumkin.

$_GET - URL so‘rovi parametrlari orqali joriy skriptga uzatiladigan o‘zgaruvchilar massivi.

$_POST - bu HTTP POST usuli orqali joriy skriptga uzatiladigan o‘zgaruvchilar massivi.


GET-dan qachon foydalanish kerak?

GET usuli bilan shakldan yuborilgan ma’lumotlar hammaga ko‘rinadi (barchasi o‘zgaruvchilar nomlari va qiymatlari URLda ko‘rsatiladi). GET miqdori bo‘yicha ham cheklovlarga ega yuborish uchun ma’lumot. Cheklov taxminan 2000 belgidan iborat. Biroq, o‘zgaruvchilar URLda ko‘rsatilganligi sababli, xatcho‘p qo‘yish mumkin sahifa. Bu ba’zi hollarda foydali bo‘lishi mumkin.

GET sezgir bo‘lmagan ma’lumotlarni yuborish uchun ishlatilishi mumkin.

Eslatma: GET HECH QACHON parollar yoki boshqa maxfiy ma’lumotlarni yuborish uchun ishlatilmasligi kerak!


POST-dan qachon foydalanish kerak?

POST usuli bilan shakldan yuborilgan ma’lumotlar boshqalarga ko‘rinmaydi (barcha nomlar/qiymatlar HTTP so‘rovining asosiy qismiga kiritilgan) va jo‘natiladigan ma’lumotlar miqdori bo‘yichacheklov yo‘q.

POST shuningdek, fayllarni serverga yuklashda ko‘p qismli ikkilik kiritishni qo‘llab-quvvatlash kabi ilg‘or funksiyalarni qo‘llab-quvvatlaydi.

Biroq, o‘zgaruvchilar URLda ko‘rsatilmaganligi sababli, sahifaga xatcho‘p qo‘yish mumkin emas.

Ishlab chiquvchilar shakl ma’lumotlarini yuborish uchun POST-ni afzal ko‘rishadi.

Keling, PHP shakllarini xavfsiz tarzda qanday qayta ishlashimiz mumkinligini ko‘rib chiqaylik!



W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!