فقط واتساپ ۰۹۱۵۷۲۳۲۳۹۸

دریافت اطلاعات از دیتابیس در php

دریافت اطلاعات از دیتابیس وردپرس

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

 

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

برای شروع آموزش نحوه گرفتن اطلاعات از دیتابیس در php قصد داریم یک مثال را آماده کرده و تا انتهای آموزش مراحل را روی آن اجرا کنیم. پس آنچه که شما به آن نیاز دارید در ابتدای کار، یک پایگاه داده بنام myProject بسازید. سپس جدولی بنام users را داخل آن ایجاد کنید. برای جدول چهار ستون به نامهای id, username, email و age طراحی کنید و یکسری رکوردهای دلخواه در آن اضافه کنید. تمامی این مراحل را میتوانید طبق آموزش های بخش آموزش کار با پایگاه داده پیش ببرید. پس از آن باید سه فایل بسازید به نام های process.php, config.php و index.php.

فایل config.php کدهای اتصال با پایگاه داده را در خود نگه می دارد. فایل process.php کدهای مربوط به دریافت داده از پایگاه است و index.php نیز نمایش داده های دریافت شده را برعهده دارد.

 

 

اتصال به دیتابیس در php

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

 

کد بالا یک آرایه بنام database است که مشخصات پایگاه داده از جمله نام هاست، نام پایگاه، نام کاربر و رمز عبور کاربر را در خود ذخیره کرده است. برای اتصال به پایگاه ما از این آرایه استفاده می کنیم:

 

 

از دستور try catch برای اتصال استفاده کردیم تا در صورت بروز خطا امکان مدیریت آن را داشته باشیم. نحوه اتصال به پایگاه از روش PDO است و با کلید new یک شی می سازیم و داخل متغیر db قرار می دهیم . این کار باعث می شود که بتوانیم کوئری های خودمان را براحتی اجرا کنیم. برای درک بهتر، به قسمت آموزش کار با pdo در php مراجعه کنید.

بلاک catch برای زمانی تعریف می شود که در try خطایی رخ داده باشد. در صورت بروز خطا تابع die اجرا شده و پیغام خطا نمایش داده می شود.

 

این پست رو حتما ببین : آموزش font-face در css

 

دریافت اطلاعات از دیتابیس در php

دریافت اطلاعات از mysql در php گام بعدی است که توسط فایل process.php انجام می شود. کدهای مربوط به دریافت اطلاعات از دیتابیس در php را داخل این فایل قرار می دهیم.  هدف این است که تابعی بنویسیم که تمامی اطلاعات داخل جدول را  استخراج کرده و بصورت یک شی برای ما برگرداند. کاری که باید انجام دهیم این است که ابتدا فایل config.php را در اول فایل process.php اضافه کنیم با این کار می توانیم از اتصال پایگاه انجام شده در فایل config.php استفاده کنیم. کد زیر این دستورات را نمایش می دهد:

 

در خط اول تابع include_once کار اضافه کردن فایل را انجام داده است. استفاده از once به این معناست که این فایل فقط یکبار داخل process.php به اصطلاح include می شود. در ادامه کد تابعی با نام getALLUsers تعریف کرده ایم که تمامی رکوردهای داخل جدول users را برای ما استخراج کند. انتخاب متغیر db از نوع گلوبال برای این است که به ما امکان می دهد از این متغیر برای اتصال استفاده کنیم. به این نکته دقت داشته باشید که db یک متغیر داخل فایل config.php است و ما میخواهیم از آن در فایل process.php استفاده کنیم.

پس از گرفتن اطلاعات از دیتابیس در php،آنها را در یک متغیر stmt قرار داده ایم و پس از آن این متغیر را execute می کنیم. تابع execute کوئری های ما را اجرا کرده و به عنوان خروجی بوسیله تابع fetchALL آنرا return می کنیم. تابع fetchALL شامل تمامی رکوردهایی است که از دیتابیس خوانده شده اند. عبارت PDO::FETCH_OBJ در داخل این تابع باعث می شود که خروجی ارسال شده از دیتابیس در قالب یک شی به ما داده شود.

 

این پست رو حتما ببین : آموزش توابع مهم php + لیست انواع توابع

 

تابع گرفتن اطلاعات از دیتابیس در php

برای اطمینان از اینکه عملکرد تابع دریافت اطلاعات درست بوده است، آنرا داخل process.php صدا زده و نتایج را چاپ می کنیم. بدیهی برای دریافت نتیجه حتما باید در جدول چیزی درج کرده باشید. برای اینکار کد زیر را در انتهای کدهای فایل process.php اضافه کنید. (دریافت اطلاعات از دیتابیس در php)

با استفاده از دستور var_dump مقادیر ریخته شده داخل متغیر users را مشاهده می کنیم.

 

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

 

 

 

نمایش اطلاعات از دیتابیس در php

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

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

 

حال با یک حلقه foreach نتایج را به داخل صفحه html انتقال می دهیم. کد زیر یک کلاس container است که در یک div در داخل فایل index.php قرار دارد.

 

اکنون باید این div را داخل حلقه foreach گذاشته تا به تعداد رکوردهای جدول تکرار شود و نتایج را یکی یکی نمایش دهد.

 

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

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

3 دیدگاه دربارهٔ «دریافت اطلاعات از دیتابیس در php»

کامیار گفت:

با سلام
ممنون از محتوای شما . برای اینکه بتوانیم از سرور ، sql server را بخوانیم و در داخل اینترانت (هاست داخلی وردپرس) به نمایش در بیاریم از چه راهکاری میشه استفاده کرد.
آیا امکان اینکه در فیلد های پویا نمایش داده شود نیز وجود دارد؟؟

نادر گفت:

سلام و هسته نباشید
با تشکر از مطالب بسیار آموزنده و با ارزش تون
جسارتا شما در بخش “پیش نیاز آموزش” فرمودید: “فایل config.php کدهای اتصال با پایگاه داده را در خود نگه می دارد” و بعد در بخش “اتصال به دیتابیس در php” فرمودید “برای گرفتن اطلاعات از دیتابیس در php ابتدا باید به آن متصل شویم. بنابراین در ابتدای کار کدهای اتصال به دیتابیس در php را داخل فایل process.php می نویسیم”، راستش من اینجا قاطی کردم و متوجه منظورتون نشدم! یعنی در ابتدا گفتید فایل config کدهای اتصال با پایگاه داده رو نگه میداره و بعدش بلافاصله فرمودید که کدهای اتصال به دیتابیس در php را داخل فایل process.php می نویسیم، حالا در کدوم فایل باید بنویسیم و من قاطی کردم! راستش من تازه آموزش php رو شروع کردم و برا همین اگر سوال ساده و بیجایی کردم منو ببخشید.

با سپاس از شما

رضا حیدری گفت:

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

دیدگاهتان را بنویسید

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

ورود | ثبت نام
شماره موبایل یا ایمیل خود را وارد کنید
برگشت
کد تایید را وارد کنید
کد تایید برای شماره موبایل شما ارسال گردید
ارسال مجدد کد تا دیگر
برگشت
رمز عبور را وارد کنید
رمز عبور حساب کاربری خود را وارد کنید
برگشت
رمز عبور را وارد کنید
رمز عبور حساب کاربری خود را وارد کنید
برگشت
درخواست بازیابی رمز عبور
لطفاً پست الکترونیک یا موبایل خود را وارد نمایید
برگشت
کد تایید را وارد کنید
کد تایید برای شماره موبایل شما ارسال گردید
ارسال مجدد کد تا دیگر
ایمیل بازیابی ارسال شد!
لطفاً به صندوق الکترونیکی خود مراجعه کرده و بر روی لینک ارسال شده کلیک نمایید.
تغییر رمز عبور
یک رمز عبور برای اکانت خود تنظیم کنید
تغییر رمز با موفقیت انجام شد