آموزش کامل ساخت فرم ورود با PHP
در قسمت قبل این سری آموزشی توضیح روش ساخت یک فرم ثبت نام با PHP را آموزش دادیم و گفتیم که این سیستم، یکی از بهترین تمرین ها برای یادگیری PHP میباشد. در این قسمت از این سری آموزشی ۳ قسمتی میخواهیم آموزش کامل ساخت فرم ورود با PHP را داشته باشیم. اگر قسمت قبل این آموزشی را ندیدهاید، اینجا کلیک کنید و پس از مشاهدهی آن، با این آموزش همراه من باشید.
ساخت فرم ورود با PHP
دانلود این آموزش با کیفیت بالا و حجم ۳۲ مگ
ساخت فایل login.php
در ادامهی سری آموزشی ساخت سیستم ثبت نام، ورود و پروفایل کاربری، میخوایم ساخت فرم ورود با PHP را یاد بگیریم. سیستم ورود ما به این صورت قرار است کار کند:
کاربر در صفحهی ورود ایمیل + رمز عبور خود را وارد میکند. سپس ما در دیتابیس (پایگاه داده) چک میکنیم که آیا کاربری قبلا با این مشخصات در سیستم ما ثبت نام کرده است یا خیر. اگر ثبت نام کرده بود، به کاربر پیام «ورود شما موفقیت آمیز بود» را نشان میدهیم. و اگر ثبت نام نکرده بود، به کاربر یک پیام خطا نشان خواهیم داد.
برای شروع ساخت فرم ورود با PHP در پوشهی اصلی پروژهمان یک فایل با اسم login.php میسازیم و کدهای زیر را در آن قرار میدهیم:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>ورود به حساب کاربری</title> <link rel="stylesheet" href="styles.css"> </head> <body> <div id="users"> <form action="engine/do-login.php" method="post"> <input type="text" name="email" class="input" placeholder="ایمیل شما ..."><br> <input type="password" name="password" class="input" placeholder="رمز شما ..."><br> <input type="submit" name="do-login" value="ورود به حساب کاربری"> </form> </div> </body> </html>
در خصوص این فرم و روش کار با آن در قسمت قبل توضیح کامل ارائه دادیم. اما بصورت خلاصه اگر بخواهیم بگوییم، در این فایل در خط ۱۱ اطلاعات فرم را بعد از تایید به فایل do-login.php که در پوشهی engine قرار دارد ارسال کردهایم و در آن فایل میخواهیم چک کنیم که آیا کاربری با این مشخصات در سیستم ما ثبت نام کرده است یا خیر.
ساخت فایل do-login.php
وارد پوشهی engine میشویم و در داخل آن یک فایل با نام do-login.php میسازیم. در این فایل اطلاعات ورودی کاربر، یعنی ایمیل و رمز او را دریافت میکنیم و چک میکنیم که آیا این کاربر قبلا در سیستم ما ثبت نام کرده است یا خیر.
برای انجام اینکار کد زیر را در فایل do-login.php مینویسیم:
<?php require_once 'db.php'; $email = $_POST['email']; $password = $_POST['password']; $check = mysqli_query($db, "SELECT * FROM users WHERE email='$email' AND password='$password'"); if(mysqli_num_rows($check) > 0){ // این یک نقطه نیست و عدد صفر میباشد. echo 'welcome to your profile'; }else{ echo 'you do not registered yet'; } ?>
در خط ۲ این فایل، فایل مربوط به دیتابیس را require_once کردهایم که بتوانیم به دیتابیس وصل شویم و از آن استفاده کنیم.
در خط ۴ و ۵، اطلاعات ورودی کاربران را با استفاده از متد POST دریافت کردهایم و در ۲ متغیر email و password ذخیره کردهایم. برای اطلاعات بیشتر میتوانید آموزش تفاوت GET و POST را مشاهده کنید.
در خط ۷ یک کوئری یا دستور را برای پایگاه داده ارسال کردهایم که در زیر آنرا میبینیم:
SELECT * FROM users WHERE email='$email' AND password='$password'
این کوئری از دیتابیس درخواست میکند که از جدول usere، هر کاربری که ایمیل او برابر با ایمیل وارد شدهی کاربر و رمز او نیز برابر با رمز وارد شده کاربر است را از دیتابیس دریافت کند.
سپس در خط ۸، با استفاده از تابع mysqli_num_rows بررسی کردهایم که این کوئری ما، چند کاربر را در دیتابیس پیدا کرده است. اگر تعداد کاربرانی که دیتابیس پیدا کرده است، بیشتر از صفر بود، یعنی قبلا یک کاربر با ایمیل و رمزی که وراد شده، در سیستم ما ثبت نام کرده است.
به این صورت میتوانیم متوجه شویم که آیا ایمیل و رمزی که کاربر در صفحهی login.php وارد کرده است، صحیح است یا نه. که اگر صحیح بود یک پیام موفقیت آمیز با عنوان «welcome to your profile» به کاربر نشان میدهیم و اگر کاربری با این مشخصات در دیتابیس پیدا نکردیم، به کاربر پیام «you do not registered yet» را نشان میدهیم.
اتمام سیستم ورود
تا اینجا اقدام به ساخت فرم ورود با PHP کردیم. در قسمت بعدی که قسمت نهایی این سری آموزشی میباشد، اقدام به افزودن چند قابلیت به این سیستم میکنیم و همینطور پروفایل کاربری را برای این سیستم طراحی و برنامه نویسی میکنیم. اگر قسمت های دیگر این سری آموزشی را ندیدید، لینک های زیر برای شماست:
- قسمت اول: آموزش کامل ساخت سیستم ثبت نام با PHP
- قسمت دوم: آموزش کامل ساخت سیستم ورود با PHP (همین آموزش)
- قسمت سوم: آموزش کامل ساخت پرفایل کاربری با PHP
درباره مهدی خسروی
۸ سال پیش که یادگیری برنامه نویسی رو آغاز کردم، با یک مشکل بزرگ مواجه شدم: کمبود منابع آموزشی حرفهای و کاربردی به زبان فارسی. به همین دلیل، بعد از چندین سال فعالیت حرفهای در زمینهی برنامه نویسی، تصمیم گرفتم دانستهها و تجربیات خودم را با شما عزیزان به اشتراک بگذارم. پیشنهاد میکنم به آدرس yadify.com/gifts حتما سر بزنید :)
نوشته های بیشتر از مهدی خسرویمطالب زیر را حتما مطالعه کنید
4 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
دیدگاهتان را بنویسید لغو پاسخ
این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش میشوند.
اگر کسی به دیتابیس دسترسی پیدا کنه عملا میتونه پسورد مارو ببینه پس بهتره از md5 استفاده کنیم
سلام خسته نباشید میگم بهتون مهندس
واقعا خدا خیرتون بده
اینقدر دنبال یه فیلم اموزشی میگشتم که login رو کامل و واح توضیح بده تا این از این سایت پیدا کردم
خدایش خیلی دعا تون کردم .
متشکرم ازتون
سلام مهدی عزیز
خوشحالم که این اموزش برای شما مفید بوده و تونستین ازش استفادهی مفید کنید. مرسی از نظر انگیزه بخشتون
عالی بود
ممنون