طراحی سایت, ساخت ربات تلگرام, آموزش php , سورس کد php ,سورس ربات تلگرام , سورس فروشگاه اینترنتی , آموزش طراحی وب

آموزش PHP – متد GET و POST


آموزش PHP

در قسمت قبلی کار با توابع PHP را یاد گرفتیم. در این بخش از سری آموزش PHP قصد داریم به شما نحوه ارسال اطلاعات به سرور با متدهای GET و POST و دریافت آن توسط PHP را آموزش بدیم.

 

متدهای ارسال اطلاعات به سرور

ارتباطات مرورگر وب با سرور معمولا با یکی از دو متد HTTP به نام های GET و POST انجام می شود.

هر دو این متدها اطلاعات را بصورت متفاوت پاس می دهند و هر کدام مزیت و معایب خود را دارند که در زیر توضیح دادیم.

 

متد GET (گت)

در متد GET داده ارسال شده بصورت پارامترهای URL که معمولا جفت های نام و مقدار آنها است و با علامت & جدا شده اند, هستند.

بطور معمول, یک URL با داده GET بصورت زیر است :

بخش های name و age در این آدرس URL همان پارامترهای GET هستند و بخش های جلوی عملامت مساوی مقادیر آن پارامترها می باشند.

 

مزیت و معایب استفاده از متد GET

  • از آنجا که داده های ارسالی با متد GET در URL نمایش داده می شوند, امکان بوکمارک کردن صفحه خاص با مقادیر query string آن وجود دارد.
  • متد GET برای ارسال داده های حساس مثل نام کاربری و رمزعبور مناسب نیستند, چراکه بطور کامل در URL قابل نمایش هستند و در تاریخچه مرورگر ذخیره می شوند.
  • از آنجا که متد GET داده ها را به متغیر محیطی سرور اختصاص می دهد, پس طول URL ما محدود است بنابراین یک محدودیت در حجم داده ارسالی داریم.

PHP متغیر سراسری $_GET را برای دسترسی به تمام اطلاعات ارسال شده توسط مرورگر یا فرم HTML که از method=”get” استفاده می کند, در اختیار ما قرار می دهد.

 

متد POST (پست)

در متد POST داده ارسالی به سرور به عنوان یک پکیج در یک ارتباط جداگنه با پردازش اسکریپت می باشد. داده ارسالی با متد POST در URL قابل نمایش نیست.

 

مزیت و معایب استفاده از متد POST

  • امن تر از متد GET است چرا که اطلاعات وارد شده توسط کاربر در مرورگر قابل نمایش نیست یا در لاگ سرور ذخیره نمی شود.
  • محدودیت حجم داده ای که می توانیم ارسال کنیم بسیار بیشتر است و می توان داده متنی مثل باینری برای آپلود فایل را با POST ارسال کرد.
  • از آنجا که داده ارسال با متد POST در  URL قابل نمایش نیست, پس بوکمارک کردن صفحه با کویری مشخص امکان پذیر نیست.

همانند $_GET , PHP متغیر سراسری $_POST را برای دسترسی به تمام اطلاعات ارسال شده توسط مرورگر یا فرم HTML که از method=”post” استفاده می کند, در اختیار ما قرار می دهد.

 

متغیر $_REQUEST

PHP یک متغیر سوپرگلوبال دیگر $_REQUEST را که شامل هر دو مقدار متغیر $_GET و $_POST و همچنین $_COOKIE می باشد را در اختیار ما قرار می دهد.

در مورد کوکی ها و مدیریت فرم ها در بخش های بعدی بیشتر یاد می گیرید.

نکته : متغیرهای سوپرگلوبال $_GET, $_POST, $_REQUEST جزء متغیرهای از پیش ساخته شده هستند که در تمام اسکوپ ها داخل اسکریپت در دسترس هستند.

 

امیدوارم در این بخش آموزش PHP, از کار با متد GET و POST در php نهایت استفاده را برده باشید.

در بخش بعدی وارد بخش مباحث پیشرفته PHP می شویم و برای اولین مورد نحوه کار با توابع تاریخ و زمان در PHP را یاد می گیریم.

هر سوالی داشتید ، از قسمت نظرات ارسال کنید . سریعا ، پاسخگوی سوالات شما هستیم .

موفق باشید

حسن شفیعی
مدرس ، پنتستر ، توسعه دهنده اپلیکیشن های تحت وب ، عضو مرکز حامی نخبگان و از مدیران و اعضای رسمی تیم امنیتی آشیانه هستم . علاقه خاصی به زبان های تحت وب, امنیت شبکه و لینوکس دارم و هر روز تلاش می کنم به این حوزه ها مسلط تر شوم و اطلاعاتم را در وب به اشتراک بگذارم

دیدگاه کاربران

avatar
5 دیدگاه ها
15 پاسخ ها
0 دنبال کننده ها
 
دیدگاه با بیشترین پاسخ
پرطرفدارترین دیدگاه ها
6 تعداد نویسندگان دیدگاه
حسن شفیعیSaeededعلیحسینali نویسنده های اخیر دیدگاه
Saeeded
Saeeded

سلام
میشه در حالت cronjobs با استفاده از متد post داده ای رو به یک فایل دیگه فرستاد و فایل مقصد روی اون متغیر عملیاتی انجام بده ؟؟ بدون دخالت دست یا اجراشدن روی مرورگر خاصی ؟؟؟
مثلا من با استفاده از cronjob داده ای رو داخل بانک اطلاعاتی جستجو کردم و فیلد های مشخصی رو پست کنم به url دیگه ای که متد post رو قبول میکنه.

علی
علی

سلام
یک سوالی داشتم من از یک سایتی نام کاربری و پسورد دارم که اکانت اون شرکت برای من اومده فعال کرد و وقتی روی سیستم توی منزل می خوام وارد اکانت بشم اجازه بهم نمیده ولی با سیستم داخل مغازه می تونم وارد اکانت سایت بشم زبان سایت asp ولی می خوام بدونم چه جوری تونسه این قابلیت ایجاد کنه که فقط با سیستم داخل مغازه وارد اکانت بشم آیا مشخصه خاصی از سیستم من گرفته که اول اون query میگیری و در صورت برابری اجازه ورود میده؟
ممنون میشم یک توضیحی در این مورد بهم بدین

حسین
حسین

باسلام خدمت استاد. یک سوال در موردphp .مثلافقط یک دکمه داریم که من میخوام وقتی روی این لینگ کلیک شد یک کوئری رو مثل این که انجام بده (اول بنویسه سلام بعد بنویسه ممنون ) باید از چه دستوری استفاده کنم لطفا راهنماییم کنید

ali
ali

سلام خسته نباشید
یک سوال داشتم
چه جوری میتونم یک متنی فقط در نسخه موبایل نمایش دهیم؟یعنی وقتی با موبایل وارد سایت شد اون متن نمایش بدم؟

محمد رخشانی
محمد رخشانی

در قسمت “مزیت و معایب استفاده از متد های مختلف” دوبار از کلمه GET اشتباه استفاده شده! لطفا اصلاح فرمایید

مطالب زیر را حتما بخوانید

    دانلود رایگان (هدیه ویژه)

    کتاب آموزش زبان برنامه نویسی PHP را دانلود و همین امروز یادگیری را شروع کن و به جمع برنامه نویسان ملحق شو ;)

    دانلود رایگان کتاب

    سورس فروشگاهی دیجی کالا

    بخش کاربران

    هنوز عضو نیستید ؟ کلیک کنید

    دانلود کتاب

    عضویت رایگان خبرنامه

    بدلیل نبود پشتیبانی و پاسخگویی, امکان خرید و ارایه خدمات پس از فروش وجود ندارد. لطفا از آموزش های رایگان سایت نهایت استفاده را ببرید