سفارش تبلیغ
صبا ویژن

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

 

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

 

در مقالات قبلی در مورد فراموشی رمز عبور php   صحبت کرده ایم، در این قسمت نیز به ادامه آن می پردازیم. بعد از ایجاد فایل فراموشی رمز عبور به نام forget_password باید فیلد lost را در جدول داده های customers ایجاد کنیم. بعد از آن باید در پایگاه داده هایمان نیز تغییراتی ایجاد کنیم. به همین منظور wamp را روشن می کنیم و به PhpMyAdmin می رویم و از پایگاه داده ecommerce به جدول داده ایی می رویم. یکسری تغییراتی باید انجام دهید و در پایان کلید go رو فشار دهید. بعد از آن یکسری جای خالی را با توجه به مقادیر تنظیم کنید و بر روی کلید save بزنید. بعد از آن فیلد lost به فیلد های قبلی شما اضافه می شود.

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

ایجاد فایل بروزرسانی رمز عبور

باز به آدرس C:\wamp\www\ecommerce می رویم و در آنجا یک فایل به نام updatepassword.php ایجاد می کنیم. بعد آن را باز کرده و یکسری کد را به آن اضافه می کنیم. در این کد هایی که به این فایل وارد می کنمی ابتدا به پایگاه داده متصل می شویم و بعد Header.php را include  می کنیم تا حالت کلی و Header  سایت به وجود بیاید.

تفاوت عملکرد == و ===

این دو عملکرد مقایسه ای تفاوت اندکی با یکدیگر دارند. عملکرد == برای مثال var1=var2==var3 در این صورت var1 در صورتی درست است که مقدار var2 با مقدار var3 برابر باشد در غیر این صورت اشتباه است. و عملکرد === برای مثال var1=var2===var3 در این صورت var1 زمانی درست است که مقدار var2 با مقدار var3 هم از لحاظ مقدار و هم از لحاظ نوع یکی باشند در غیر این صورت اشتباه است.

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

آموزش ساخت آزمون آنلاین با php

ساختار jwt چگونه است؟

در ابتدا باید توضیح مختصری در مورد اینکه jwt چیست بدهیم. Jwt اعتبار سنجی است که هویت کاربر را تایید می کند. و در کل از سه بخش که توسط نقطه از هم جدا می شوند تشکیل شده است. سه بخش آن عبارت اند از :

1-    Header

2-    Payload

3-    Signature

با این وجود ساختار توکن ها که خود منحصر به فرد هستند و مانند اثر انگشت هر کدام از توکن ها مختص یک نفر است ساختاری این چنین دارند.

xxxxx.yyyyy.zzzzz

header

header معمولا از دو قسمت نوع توکن و الگوریتم رمزنگاری تشکیل شده است.

Payload

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

Signature

امضای توکن ها برای صحت توکن استفاده می شود. در کل امضا این اطمینان را به ما می دهد که توکن در بین راه دستکاری نشده است.

جمع بندی

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


انقضا و صدور توکن ها به چه صورتی است؟

تصویر jwt چیست

 

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

توکن ها بدون حالت صرفا بر اساس بررسی امضای پیام رسیده کار می کنند. به این صورت که یک توکن می تواند تا ابد معتبر باقی بماند. برای رفع این مشکل باید تاریخ انقضای متناسبی به آن اضافه کرد. برای برنامه های بسیار حساس این عدد می تواند 15 دقیقه باشد و برای برنامه های کمتر حساس، چندین ماه نیز می تواند باشد. اگر در این حین قرار به ابطال سریع توکنی بود باید چه کرد؟ یک راه حل آن، ثبت رکودهای تمام توکن های صادر شده در بانک اطلاعاتی است. برای این کار می توانیم یک فیلد jti درست کنیم و id ها را در بانک اطلاعاتی ذخیره کنیم. در این صورت می توانید از بین توکن های صادر شده و کاربران و اطلاعات ارتباط برقرار کنیم. در این حالت برنامه نیز علاوه بر بررسی امضای توکن می تواند به لیست های id های صادر شده و دخیره سازی در دیتابیس نیز مراجعه کند. از این طریق اعتبار سنجی اضافه تری را در جهت باطل کردن سریع توکن ها انجام می دهند. این روش با دنیای واقعی سازگاری بیشتری دارد.

در کل در جواب jwt چیست، می توان گفت یک روش اعتبار سنجی است که دو روش مختلف دارد. اولین روش پرکاربرد ترین روش است، که به ازای هر درخواست یک کوکی به سمت سرور ارسال می شود. و روش دوم نیز به ازای هر درخواست، یک توکن امضا شده به سمت سرور ارسال می شود.

ایجاد فایل بروزرسانی رمز عبور

در این مورد نیز به اندازه کافی در مقالات قبلی صحبت کرده ایم، برای فراموشی رمز عبور php بار دیگر باید به آدرس C:\wamp\www\ecommerce برویم و سپس فایل updatepassword.php را ایجاد کنیم. بعد از ایجاد باید فایل را باز کرده و یکسری کد به آن اضافه کنیم. در کد هایی که وارد می کنیم، ابتدا به پایگاه داده متصل می شویم و بعد Header.php را include می کنیم تا حالت کلی و Header سایت به وجود بیاید. سپس به پردازش اطلاعات بدست آمده می پردازیم. در این قسمت شرطی گذاشته شده است که اگر در لینک آمده پارامتر email وجود داشت و پارامتر code نیز حتما مقدار داشت، انگاه باید یکسری دستورالعمل خاصی به اجرا در بیاید.

 

نصویر فراموشی رمز عبور php

 

دستورالعمل هایی که به اجرا در می آیندابتدا با استفاده از متغیر سازی مقدار دو پارمتر code و email را از لینک بیرون می کشد و در ادامه در پایگاه داده و جدول داده ای به دنبال email می گردد و تعداد آن را در متغیر قرار می دهد. حال دستور شرطی به اجرا در می آید. که دو حالت خواهد داشت.

جمع بندی

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


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

 

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

 

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

ایجاد سیستم فراموشی رمز عبور با php

ابتدا باید wamp     را روشن کنید و از طریق مرورگرتان به آدرس http://localhost/ecommerce/checkout.php  بروید و بعد از آن به آدرس C:\wamp\www\ecommerce بروید و فایل customer_login.php را باز کنید و یک کد را در آن فایل پیدا کنید. این کد دقیقا همان لینک دکمه مانند است. فراموشی رمز عبور phpکار بسیار آسان و قابل حلی است اگر برنامه نویس تمام این ریزه کاری ها را به صورت دقیق انجام داده باشد. تا به طور منظم اطلاعات شما تایید شود و در آخر رمز عبور برای شما که عضو آن سایت بوده اید ارسال شود.

انجام یک سری تغییرات در فایل checkout.php که باید برای این کار به آدرس C:\wamp\www\ecommerce می رویم ولی این بار فایل checkout.php را باز می کنیم و کدهایی را در آن پیدا می کنیم. باید آن کد ها را پاک کنید و کدهایی به صورت جایگزین را وارد کنید.

ایجاد فایل فراموشی رمز عبور

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

Jwt چیست؟

Jwt دسته رشته ای رمز شده هستند که در header درخواست http گذاشته می شود تا به کمک و استفاده از آن بتوان کاربران را تایید هویت کرد. به این دسته کد ها توکن گفته می شود. که معمولا با هش کردن داده های json توسط کلید رمز به این توکن ها می رسیم.

jwt چیست

Jwt چگونه کار می کند؟

 

موقعی که کاربر به صورت موفقیت آمزی در سایت ثبت نام می کند، توکن برای او تولید می شود و این توکن مانند اثر انگشت مختص به هر شخصی است. و هر کس برای خود توکن مخصوص خود را دارد. و در کل هر زمانی که کاربر درخواست دسترسی به اطلاعاتی را بدهد، به همراه درخواست توکن خود را نیز به header می فرستد. در این صورت سرور با decode کردن توکن می تواند تشخیص بدهد که آیا کاربر امکان دسترسی به این منبع را دارد یا نه.