ثبت نام کنید

ورود

فراموشی رمز عبور

رمز عبور خود را فراموش کرده اید؟ آدرس ایمیل خود را وارد کنید، یک ایمیل حاوی لینک بازیابی رمز عبور برای شما ارسال می شود.

پرسیدن سوال

برای پرسیدن سوال، باید وارد حساب کاربری خود در سایت شوید.
در بین 697 آموزش و 1260 پرسش به دنبال چه هستید؟

در بپرسم کلیه مطالب آموزشی رایگان است، کافیست فقط آن چیزی را که میخواهید دنبالش بگردید


آموزش فرم ها در PHP – ارسال داده های فرم(GET,POST)

سلام

آموزش مباحث مقدماتی PHP به پایان رسید، یکی از موارد دیگری که در PHP با آن ها زیاد سر و کار داریم، فرم ها هستند از فرم ها برای دریافت و ارسال اطلاعات استفاده میکنیم، در این قسمت میخواهیم بپردازیم به چگونگی مدیریت و ایجاد یک فرم در PHP، در ادامه همراه بپرسم باشید.

یک فرم ساده HTML

مثال زیر یک فرم HTML ساده با دو فیلد ورودی و یک دکمه ارسال را نمایش می دهد:

در فرم بالا، هنگامی که کاربر دو فلید name و lastname را تکمیل کند و روی دکمه ارسال کلیک کند، اطلاعات به فایل PHP به نام welcome.php ارسال میشود، اطلاعات فرم با روش HTTP POST ارسال میشود.

برای نمایش داده های ارسال شده به صفحه welcome.php میتوانیم به این شکل عمل کنیم:

در فرم HTML که داشتیم تو input از نوع Text داشتیم که برای هر کدام یک name تعریف کردیم(name,lastname)، حال در صفحه Welcome.php کافیست که نام هایی که برای هر فیلد در نظر گرفتیم با دستور echo چاپ کنیم تا بتوانیم داده های ارسال شده در فرم را نمایش دهیم.

خروجی کد بالا، میتواند چیزی شبیه به این باشد:

حتما بخوانید:  دانلود افزونه SeoPress Pro(فارسی)

فرمی که در بالا داشتیم را به روش GET میتوانیم داده ها را اسال کنیم:

و کد صفحه welcome_get.php برای نمایش اطاعات ارسال شده:

فرمی که در بالا ساختیم بسیار ساده است، با این حال، مهمترین مساله که امنیت هست رعایت نشده است، برای محافظت از برنامه خود از کدهای مخرب، باید داده های فرم را تایید کنید.

هنگام پردازش فرم های PHP امنیت را در نظر بگیرید!

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

در قسمت های بعدی از کار با فرم ها در PHP می پردازیم به چگونگی اعتبار سنجی داده ها تا برنامه ی خود را ایمن نگه داریم.

GET و POST

هر دو روش GET و POST یک آرایه ایجاد میکنند(مثلا آرایه key1=>value1,key2=>value2, …..). این آرایه حاوی کلید و مقدار هست، که کلید ها نام input های فرم هستند و مقدار داده های ورودی کاربر.

حتما بخوانید:  معرفی ربات تلگرام رنگین کمانی کردن متن

GET_$ و POST_$ هر دو جزو SuperGlobals(سوپرگلوبال) ها هستند، به این معنی که همیشه در هر جای برنامه قابل دسترسی هستند.

GET_$ یک آرایه از متغیرهایی هست که از طریف پارامترهای موجود در URL به صفحه مورد نظر ارسال میشوند.

POST_$ یک آرایه از متغیرهایی هست که از طریق روش HTTP POST به صفحه مورد نظر ارسال میشوند.

چه زمانی از GET استفاده کنیم؟

زمانی که اطلاعات یک فرم را با روش GET ارسال میکنیم، اطلاعات ارسال شده برای همه قابل مشاهده هست(به این معنا که مقادیر ارسال شده در URL نمایش داده میشود). در روش GET محدودیت حدودا ۲۰۰۰ کاراکتری برای ارسال داده ها داریم.

زمانی که اطلاعات ارسالی حساس نباشد از GET میتوانیم استفاده کنیم.

نکته: از GET برای ارسال داده های حساس مانند رمزهای عبور و … استفاده نکنید.

چه زمانی از POST استفاده کنیم؟

اطلاعات ارسال شده از یک فرم با روش POST برای هیچکس قابل مشاهده نیست(اطلاعات ارسالی در این روش در URL نمایش داده نمیشود) و همچنین در POST هیچ محدودیتی برای ارسال داده ها نداریم.

علاوه بر این، POST از قابلیت های پیشرفته ای مانند پشتیبانی از ارسال همزمان چند باینری نظیر آپلود چندگانه به سرور پشتیبانی میکند.

در ۹۹ درصد موارد از POST استفاده کنید، در شرایطی که به پارامترهای ارسال شده در URL نیاز دارید از GET استفاده کنید.

در قسمت بعدی همراه ما باشید تا ببینیم چگونه میتوانیم داده های موجود در فرم را به روش امن ارسال کنیم.

موفق باشید..

درباره احمد آخوندیمدیر

در صورتی که از بپرسم راضی بودید؛ میتوانید حمایت مالی کنید

دنبال کردن من

پاسخ دهید