6.3 - misol URLda ma’lumotlarni uzatilishi.
http://phpbook.info/test.php?id=10&user=pit
Shu bilan birga ma’lumotlarni GET metodida jo‘natishni bir kamchiligi bor - parametrlar qiymatini biror kim o‘zgartirib qo‘yishi mumkin. Shuning uchun dastur yoki server ishi xafvsizligiga daxldor parol bilan himoyalangan sahifalarda ma’lumotni jo‘natish uchun bu metoddan foydalanishni maslahat berilmaydi. Bundan tashqari foydalanuvchi tomonidan o‘zgartirish ta’qiqlangan ma’lumotlarni jo‘natish uchun GET metodidan foydalanish yaramaydi.
Shuncha kamchiliklarga qaramasdan, skriptlarni sozlashda (bu holda jo‘natilayotgan o‘zgaruvchilarni nomini va qiymatini ko‘rish mumkin) va xavfsizlikka daxlsiz bo‘lgan parametrlarni jo‘natishda GET metodidan foydalanish yetarli darajada qulay.
POST metodi.
POST metodida formalar xuddi GET metodidagidek kodlanadi, lekin so‘rov qismi URLga qo‘shilmaydi, balki POSTning amallari, ya’ni berilganlar bloki qismidek yuboriladi. Agar action atributi mavjud bo‘lsa, unda URL ushbu berilganlar blokini qaerga jo‘natishni aniqlaydi. Bu metod yuqorida aytib o‘tilgandek katta hajmdagi ma’lumotlar blokini jo‘natish uchun qo‘llaniladi.
Jo‘natilayotgan faylning uzunligi content_length doirasidagi o‘zgaruvchilarga jo‘natiladi, ma’lumotlar tipi esa content_type o‘zgaruvchisiga jo‘natiladi.
Ma’lumotlarni post metodi bilan jo‘natishni faqat HTML-formasi yordamida amalga oshirish mumkin, chunki ma’lumotlar GETdagidek so‘rov sarlavhasiga emas, balki so‘rov qismiga jo‘natiladi. Shunga ko‘ra faqatgina formaga kiritilgan qiymatni o‘zgartirish orqali parametr qiymatini o‘zgartirish mumkin. Foydalanuvchi POSTdan foydalanayotganda serverga berilayotgan ma’lumotlarni ko‘rmaydi.
POST so‘rovlarining asosiy xususiyati uning xavfsizligini kattaligi va funksionalligidadir. Shuning uchun POST metodidan katta hajmdagi va kerakli ma’lumotlarni jo‘natishda foydalaniladi. Lekin bu mexanizmga ham butunlay ishonib bo‘lmaydi, chunki unda ham POST so‘rovlarini o‘zgartirish mumkin. Masalan, html-faylini o‘z mashinamizda yaratib uni kerakli ma’lumotlar bilan to‘ldirilsa kifoya. Bundan tashqari POST metodidan hamma mijozlar foydalana olmaydilar, chunki uning ishlatish variantlari cheklangan.
Ma’lumotlarni serverga istalgan yo‘l bilan jo‘natishda faqat ma’lumotlar emas, balki foydalanuvchi tomonidan kiritilgan bir qator doiraviy o‘zgaruvchilar nomli o‘zgaruvchilar qatori, mijozni xarakterlaydigan parametrlar, uning ishi haqidagi ma’lumotlar, fayllarga yo‘l va h.k.lar ham beriladi. Quyida doiraviy o‘zgaruvchilardan ayrimlarini keltiramiz:
REMOTE_ADDR - xost(kompyuter)ning so‘rov jo‘natilayotgan IP- manzili;
REMOTE_HOST - so‘rov jo‘natilgan xostning nomi;
HTTP_REFERER – joriy skriptga murojaat(ssыlka) etiladigan qator manzili;
REQUEST METHOD – so‘rovni jo‘natishda qo‘llanilgan metod;
QUERY_STRING – URLda so‘roq belgisidan keyin joylashgan so‘rov qismi;
SCRIPT_NAME – bajarilishi kerak bo‘lgan virtual dasturga yo‘l;
HTTP_USER_AGENT – mijoz foydalanayotgan brauzer haqida ma’lumot.
Do'stlaringiz bilan baham: |