آموزش دریافت اطلاعات از mysql و قرار دادن در Spinner

سلام دوستان امیدوارم حالتان خوب باشد در این سری از آموزش برنامه نویسی اندروید به آموزش دریافت اطلاعات از mysql و قرار دادن در Spinner می پردازیم ما آموزش استفاده از دیتابیس Mysql و خواندن آن را به صورت شش پارت جداگانه در سایت قرار دادیم امروز به بررسی خواندن جدول (table) از دیتابیس mysql و قرار دادن آن در spinner خواهیم پرداخت در ادامه با ما همراه باشید.
در این آموزش ما از مجازی ساز xampp برای ایجاد دیتابیس استفاده خواهیم کرد در صورتی که شبیه سازی های متاوفت دیگری دارید می توانید از آنها استفاده کنید (زیاد فرق نمی کنند) در صورتی که مک دارید از می توایند از مجازی ساز MAMP استفاده کنید و در صورتی که از لینوکس دارید از LAMP می توانید استفاده کنید.
امکان استفاده از این آموزش در
بعد از اجرای xampp دو سرویس Apache و Mysql را اجرا کنید ( بروی دکمه های start کلیک کنید.
سپس در کنار همان دکمه start گزینه Admin را کلیک کنید منظور mysql است . آن را در مروگر باز کنید می توانید از آدرس زیر نیز استفاده کنید.

سپس یک دیتابیس به نام food ایجاد کنید.
سپس کد sql زیر را در آن اجرا کنید برای اینکار ابتدا باید دیتابیس ساخته شده (food) را انتخاب کنید سپس وارد tab  به نام sql شده و در آن کادر کد زیر را قرار دهید.

یک پوشه به نام food_api در مسیر زیر ایجاد کنید.

فایل های php که ایجاد می کنید باید در این پوشه باشد.
در پوشه ذکر شده یک فایل به نام Config.php ایجاد کرده و کدهای زیر را در آن قرار دهید.

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

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

ما یک فایل دیگه به نام new_category.php داریم کار این فایل اضافه کردن یک categories جدید به دیتابیس است . (در صورتی که خواستید می تونید از این بخش استفاده کنید )

کد بالا عملیات post را انجام میدهد یعنی یک مقداری ورودی را میگیرد و پست می کند.
تا اینجا کد های php به اتمام رسیده حالا به سراغ پروژه اندروید می رویم.
باید دسترسی استفاده از اینترنت را در AndroidManifest.xml اضافه کنید.

ابتدا باید یک کلاس به نام  Category.java ایجاد کنید این کلاس همان کلاس model ماست به این کلاس getter و setter نیز می گویند.

یک کلاس به نام ServiceHandler.java ایجاد کنید کار این کلاس خواندن json است منظور همان دانلود است ابتدا باید دریافت شود سپس مورد استفاده قرار گیرد.

کلاس بالا کاری همانند کتاب خانه های volley را انجام میدهد اما حجم کمتری دارد.
وارد activity_main.xml شده و کدهای زیر را قرار دهید.

 
در بالا یک EditText وجود دارد که با آن می توانید یک Category جدید در سرور ایجاد کنید و در پایین تر هم یک spinner وجود دارد.
و در آخر کد مربوط به MainActivity.java همانند زیر می شود.

کد بسیار طولانی است توصیه می کنم تست کنید سپس کد را  از بالا به پایین بررسی کنید.
URL_NEW_CATEGORY آدرس فایل ما در xampp است + آدرس آیپی local کامپیوتر من (این فایل برای ایجاد یک گروه جدید بود)
URL_CATEGORIES آدرس فایل ما در xampp + آدرس آیپی local کامپیوتر من (این فایل برای خواندن دیتابیس و قرار دادن در spinner بود)
 
در بالا دو تا کلاس Async داریم برای انجام عمل insert و خواندن json از آدرس url و در آخر هم دیتای خونده شده را در listview بالا populate یا قرار می دهیم.
از progressDialog هم استفاده شده است کمی دقت کنید چیز خاصی در کد بالا استفاده نشده است.
 
 
این آموزش هم به پایان رسید.
 
موفق و پیروز باشید.

مطالعه بیشتر