ورود و ثبت نام با PHP, MySQL و SQLite در اندروید

ورود و ثبت نام با PHP, MySQL و SQLite در اندروید

سلام دوستان؛

در این آموزش باهم یادخواهیم گرفت که چگونه با کمک PHP, MySQL و SQLite اقدام به ساخت صفحه ورود و ثبت نام بکنیم و همچنین در این آموزش نحوه ساخت API ساده با استفاده از PHP و MySQL را نیز آموزش می دهیم. به زبان ساده تر در آموزش ورود و ثبت نام با PHP, MySQL و SQLite در اندروید نحوه ثبت نام و ورود کاربر با کمک سایت و پایگاه داده بررسی خواهیم و تمام مراحل را به صورت گام به گام آموزش خواهیم داد.

 

پیش نیازهای آموزش:

  1. استفاده از کتابخانه volley در اندروید – جهت فراخوانی HTTP

 

(API (Application Programming Interface

برای ارتباط با پایگاه داده MySQL در ورود و ثبت نام با PHP, MySQL و SQLite در اندروید ابتدا باید یک API REST ایجاد کنیم. وظیفه API REST این است که درخواست مشتری را دریافت کند، با پایگاه داده ارتباط برقرار کند و در نهایت به مشتری پاسخ دهد، بنابراین در ابتدا ما یک PHP , MySQL API می سازیم. API ما کارهای زیر را انجام می دهد:

⇐ درخواست ها را در GET / POST پذیرش می کند.

⇐ با ارسال / دریافت داده ها با پایگاه داده ارتباط برقرار می کند.

⇐ در نهایت پاسخ در قالب JSON دریافت خواهد کرد.

ورود و ثبت نام با PHP, MySQL and SQLite در اندروید

۱.دانلود و نصب WAMP

نرم افزار WAMP را از لینک  www.wampserver.com/en/ دانلود و نصب کنید، اگر سیستم عامل MAC دارید از نرم افزار MAMP استفاده کنید. برای انجام این کار می توانید از فیلم زیر کمک بگیرید.

۲. ساخت پایگاه داده MySQL و جدول ها

phpmyadmin را باز کنید و queryهای زیر را انجام دهید تا پایگاه داده و جدول های آن برای ورود و ثبت نام با PHP, MySQL و SQLite در اندروید ایجاد شود. در اینجا ما فقط یک جدول برای کاربر ایجاد می کنیم تا اطلاعات مربوط به ورود کاربران را در آن ذخیره کنیم.

۳. ساخت پروژه PHP

به محلی که WAMP را نصب کرده اید بروید و پوشه www را باز کنید، پوشه پیش فرض WAMP در C:/wamp قرار دارد. در زیر ساختار فایل php که در این پروژه استفاده خواهیم کرد را مشاهده می کنید.

ورود و ثبت نام با PHP, MySQL and SQLite در اندروید

۱. به پوشه www بروید و یک پوشه به نام android_login_api بسازید، این پوشه به عنوان پوشه اصلی پروژه ما در ورود و ثبت نام با PHP, MySQL و SQLite در اندروید خواهد بود.

۲. در android_login_api، یک پوشه دیگر بسازید و نام آن را include قرار دهید، در این پوشه ما تمام کلاس ها را نگهداری خواهیم کرد.

۳. در include یک فایل php بسازید و نام آن را Config.php بگذارید و همچنین کدهای زیر را در آن قرار دهید. مقادیر DB_USER و DB_PASSWORD را به مقادیر خودتان عوض کنید.

۴. یک فایل php با نام DB_Connect.php برای ورود و ثبت نام با PHP, MySQL و SQLite در اندروید در پوشه include بسازید و کدهای زیر را در آن قرار دهید. در این فایل باز و بسته کردن اتصال به پایگاه داده را مدیریت می کنیم.

۵. فایل DB_Functions.php را در include بسازید و کدهای زیر را در آن قرار دهید. این فایل شامل توابعی برای ذخیره کاربر و همینطور دریافت اطلاعات کاربر است و همچنین شما میتوانید توابع بیشتری مانند حذف کاربر را به آن اضافه کنید.

unique id – من یک شناسه منحصر به فرد برای کاربر با استفاده از (uniqid(”, true تولید می کنم. به عنوان مثال امکان دارد این شناسه به صورت ۴f074eca601fb8.88015924 باشد.

Encrypted Password – کلمه عبور با استفاده از روش base64_encode ذخیره می شود. هر کلمه عبور به دو ستون نیاز دارد تا در پایگاه داده ذخیره شود. یکی برای ذخیره رمز عبور رمز شده است و دیگری برای ذخیره salt استفاده شده برای رمزگذاری رمز عبور است.

۱.۳ ثبت نام کاربر

اکنون همه کلاس های مورد نیاز آماده شده اند. شروع به ثبت نام کاربر می کنیم. این نقطه پایانی نام، ایمیل و رمز عبور را به عنوان پارامترهای POST می پذیرد و اطلاعات کاربر را در پایگاه داده MySQL ذخیره می کند.

۶. در پوشه اصلی android_login_api، یک فایل با نام register.php بسازید و کدهای زیر را در آن قرار دهید.

۲.۳ ورود کاربر

درست مانند ثبت نام کاربر، باید برای ورود کاربر چنین کاری را انجام دهیم. این کلاس به عنوان پارامتر POST ایمیل و رمز عبور را می پذیرد. پس از دریافت ایمیل و رمز عبور، در پایگاه داده برای ورود کاربر بررسی می شود. اگر اطلاعات کاربر هماهنگ باشد، نتیجه این بررسی توسط Json به نرم افزار منتقل می شود.

۷. یک فایل php بسازید با نام login.php در android_login_api و با کدهای زیر ایجاد کنید.

۳.۳ انواع مختلف پاسخ های

در ادامه انواع مختلف پاسخ های Json برای ورود و ثبت نام با PHP, MySQL و SQLite در اندروید را مشاهده می کنیم.

۱.۳.۳ ثبت نام

آدرس: http://localhost/android_login_api/register.php

پارامتر ها: name, email, password

پاسخ مثبت به ثبت نام:

ثبت نام با خطای ذخیره سازی

ثبت نام همراه با خطا – شما قبلا ثبت نام کرده اید

۲.۳.۳ ورود

آدرس: http://localhost/android_login_api/login.php

پارامتر ها: email, password

ورود با موفقیت

ورود با خطا – اشتباه بودن نام کاربری یا کلمه عبور

اکنون قسمت PHP تمام شد، بیایید به سراغ اندروید برویم. 🙂

 

۴. ورود و ثبت نام با PHP, MySQL و SQLite در اندروید

در این نرم افزار ما سه صفحه Login Screen, Registration Screen و صفحه خوش آمد گویی Dashboard Screen را داریم.

۱. اقدام به ساخت یک پروژه جدید در اندروید بکنید.

۲. سه پکیج با نام های appactivity و helper ایجاد کنید.

۳. فایل build.gradle را بازکنید و کتابخانه volley را برای استفاده به آن اضافه کنید.

۴. فایل strings.xml در مسیر res ⇒ values را باز کنید و مقادیر زیر را درآن قرار دهید.

۵. پوشه colors.xml در مسیر res ⇒ values را باز کنید و رنگ های زیر را به آن اضافه کنید.

۶. در پکیج app یک فایل جاوا با نام AppConfig.java بسازید و کدهای زیر را در آن قرار دهید. در این کلاس ما آدرس ثبت نام و ورود را مشخص می کنیم. ( برای تست شما باید ip خود را وارد کنید)

۷. در پکیج app یک فایل جاوا با نام AppController.java بسازید. این کلاس از Application ارث بری می کند و در این فایل ما هسته volley را پیاده سازی می کنیم.

۸. فایل AndroidManifest.xml را باز کنید و مجوز دسترسی به اینترنت را در آن وارد کنید، همچنین باید کلاس AppController را بعد از تگ application معرفی کنید تا به درستی کار کند.

۹. در پکیج helper یک فایل جاوا با نام SessionManager.java بسازید و کدهای زیر را در آن قرار دهید. این کلاس داده ها را به وسیله SharedPreferences ذخیره می کند و همچنین به کمک یک flag وضعیت ورود را بررسی می کند.

۱۰. در پکیج helper یک فایل جاوا با نام SQLiteHandler.java بسازید و کدهای زیر را در آن قرار دهید. این کلاس برای ذخیره اطلاعات کاربر در پایگاه داده و همچنین دریافت اطلاعات استفاده می شود.

۱.۴ ساخت صفحه ورود

۱۱. یک فایل xml با نام activity_login.xml در مسیر res ⇒ layout بسازید و کدهای زیر را در آن قرار دهید.

۱۲. یک فایل جاوا با نام LoginActivity.java در پکیج activity برای ورود و ثبت نام با PHP, MySQL و SQLite در اندروید بسازید. در این کلاس متد ()checkLogin وظیفه بررسی صحت مقادیر وارد شده با استفاده از درخواست HTTP را به عهده دارد.

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

ورود و ثبت نام با PHP, MySQL and SQLite در اندروید

۲.۴ ساخت صفحه ثبت نام

۱۳. در مسیر res ⇒ layout یک فایل xml با نام activity_register.xml بسازید.

۱۴. در پکیج activity یک فایل جاوا با نام RegisterActivity.java بسازید.

()registerUser – اطلاعات کاربر را با ارسال نام، ایمیل و کلمه عبور در پایگاه داده PHP ذخیره خواهد کرد.

()db.addUser – کاربر پس از ثبت نام موفق در پایگاه داده SQLite وارد خواهد شد.

 

ورود و ثبت نام با PHP, MySQL and SQLite در اندروید

۳.۴ ساخت صفحه Home

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

۱۵. در مسیر res ⇒ layout یک فایل xml با نام activity_main.xml بسازید و کدهای زیر را در آن قرار دهید.

۱۶. فایل MainActivity.java را باز کنید و تغییر زیر را در آن اعمال کنید. در اینجا ما فقط اطلاعات ورود کاربر را از SQLite دریافت می کنیم و نمایش می دهیم و دکمه خروج به وسیله حذف کاربر از جدول SQLite اقدام به خروج کاربر می کند.

حالا اگر برنامه اندروید را اجرا کنید، باید پس از ورود به سیستم، صفحه زیر را ببینید.

ورود و ثبت نام با PHP, MySQL and SQLite در اندروید

موفق باشید 🙂

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

عضو می‌شوم:)

مقاله های مرتبط :

دیدگاه خود را بیان کنید :

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *