صفحه اصلی » آموزش » PHP » دریافت اطلاعات و امنیت بیشتر با prepared در PDO
برگشت به صفحه اصلی
فروش قالب وردپرس نوین دانلود

قالب حرفه ای دانلود وردپرس

قیمت محصول: 50 هزار تومان

پنل مدیریت ، طراحی واکنش گرا ، سئو شده

خرید قالب فروش جم حرفه ای اکانتک فریر

فروش قالب حرفه ای اسکریپت فریر

قیمت محصول: 60 هزار تومان

گزارش ویژه فروش ، طراحی واکنش گرا ، سئو شده

استخدام نویسنده

دریافت اطلاعات و امنیت بیشتر با prepared در PDO

۲ دیدگاه

منتشر شده توسط صالح طالبی در تاریخ ۵ بهمن ۱۳۹۳
PHP / آموزش
PDO

در این پست دو مبحث دریافت اطلاعات در PDO و همچنین آموزش امنیت بیشتر با قابلیت prepared در PDO آشنا خواهید شد پس با ما همراه باشید.

آموزش گرفتن اطلاعات یک جدول و نمایش آن با PDO

 خوب برای گرفتن اطلاعات از یک جدول همیشه از دستور  Select استفاده میکنیم حالا این دستور میتونه به وسیله PDo و یا  Mysqli انجام بشه. در این جلسه این کار رو با PDO انجام میدیم.

یادآوری :

PDO از سه کلاس تشکیل شده است:

  • کلاس اصلی به نام PDO که حاوی توابع اصلی مثل اجرای کوئری و اتصال و غیره هست.
  • کلاس با نام PDOStatement حاوی توابع برای پردازش و بهره گیری ازکوئری های اجرا شده هست.
  • کلاس PDOException برای بدست گیری خطاهای رخ داده در اجرای کوئری ها و دیتابیس.

خوب جدولی که ایجاد کردیم به شکل زیر هست، همونطور که میبینید فیلدهای  username , password , fullname , email , dateregister داره، که ما میخوایم مقدار فیلدهای fullname و  email رو بگیریم و نمایش بدیم.

11

 ابتدا اطلاعات دیتابیس رو وارد میکنیم و با کلاس PDO به دیتابیس متصل میشیم:

اتصال رو در متغییری بنام $conn ذخیره میکنیم.
خوب حالا باید با استفاده از کلاس PDOstatement کوئری مورد نظرمون رو روی اتصال $conn اجرا کنیم، این کار رو با متد query انجام میدیم:

کوئری مورد نظرمون رو داخل متغییر $sql تعریف کردیم و اون متغییر رو به متد query پاس دادیم. متد query یک شیء PDOStatement و یا یک  Object PDOStatement برمیگردونه.

حالا از برای مد fetch دستور PDO::FETCH_ASSOC رو ست می کنیم. با استفاده از این مد شما میتونید نتیجه ی کوئری بالارو دریافت کنید و نمایش بدید.

PDO::FETCH_ASSOC متد fetch() رو میسازه و نتایج کوئری رو برمیگردونه ، کوئری رو هم با متغییر  $q مشخص کردیم.

خوب حالا وقتش رسیده نتایج رو چاپ کنیم تا کاربر ببینه، چون ممکنه جدول ما چندین رکورد داشته باشه پس نمیتونیم با یه دستور echo اون هارو چاپ کنیم، باید یه حلقه ایجاد کنیم و بگیم در هر بار گردش در حلقه یه رکورد رو چاپ کنه، برای اینکار از حلقه ی while استفاده میکنیم، این حلقه به تعداد رکوردهای جدول گردش ایجاد میکنه:

خوب حالا برای اینکه مدیریت خطا هم داشته باشیم از کلاس PDOException استفاده میکنیم و دستورات بالارو به شکل زیر مینویسیم:

در این کد گفتیم با  try سعی کن به دیتابیس وصل بشی و کوئری رو اجرا و کنی و نتایج رو دریافت کنی، در غیر این صورت خطایی که میده بگیر و در متغییر $pe ذخیره کن و بعد نمایش بده.


 

امنیت بیشتر در PDO با prepared

در PDO قابلیتی داریم بنام  prepared که به شما اجازه میده از پارامترها استفاده کنید و مقادیر رو با پارامترها به کوئری پاس بدید، همین کار باعث میشه که شما بصورت مستقیم مقادیر رو به دیتابیس ارسال نکنید و همین کار امنیت رو بیشتر میکنه.

خوب بریم ببینیم چطور میتونیم اطلاعات یک جدول رو با  perpared از دیتابیس بگیریم. اول به دیتابیس متصل میشیم:

خوب حالا میخوایم با شرط اطلاعات جدول  users از دیتابیس parvanweb رو بخونیم و نمایش بدیم. برای دستورات شرطی باید پارامتر به کوئری پاس بدیم. این پارامترهارو مستقیم پاس نمیدیم و اون هارو با استفاده از prepared پاس میدیم:

 اگر به کوئری بالا دقت کنید میبینید کوئری رو در متغییر  $sql ذخیره کردیم، که پارامترهارو هم بصورت  :parameter پاس دادیم. حالا باید بگیم مقادیر این پارامترها چیه، اول باید مشخص کنیم که میخوایم از  prepared استفاده کنیم پس کوئری رو با متد prepared در متغییر  $q ذخیره میکنیم.

حالا باید با متد execute متغییر $q که همون کوئری ماست رو اجرا کنیم:

در اینجا موقع اجرا میگیم این پارامترهارو به کوئری پاس بده و بعد اجراش کن. به همین راحتی : )

حالا با متد setFetchMode مقادیر این کوئری رو میگیریم و بعد با حلقه ی while اطلاعات دریافتی رو نمایش میدیم.

 و اما نحوه نمایش اطلاعات یعنی:

خوب امیدوارم از این آموزش خوشتون اومده باشه و در پایان می تونید این پروژه رو به صورت کامل دانلود نمایید.

منبع آموزش: وبسایت مدرسه مجازی ایرانیان

حتما پروان وب را در اینستاگرام فالو کنید
قالب حرفه ای لازم دارید!
هم اکنون از فروشگاه ما دیدن کنید...

مطالب پیشنهادی ما

newscode1

آموزش قراردادن کد سامانه در سایت های وردپرس

آموزش / وردپرس
۱۲ فروردین ۱۳۹۵
banner2-420x310

تغییر لوگو قالب وردپرس

آموزش / وردپرس / وردپرس
۱۲ فروردین ۱۳۹۵
add

تغییر نام پوشه wp-content در وردپرس

آموزش / وردپرس
۱۸ آذر ۱۳۹۴
new

نمایش لیست کامل نویسندگان (کاربران) در وردپرس

آموزش / وردپرس
۱۸ آذر ۱۳۹۴

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

صالح طالبی

سلام خدمت شما، صالح هستم عضو کوچکی از پروان وب، بیش از 6 سال هست تو حوزه وب هستم و در کنار وبلاگ نویسی در پروان وب، به ارائه خدمات نیز می پردازم، خوشحال میشم اگه سوالی داشته باشید با بنده مطرح کنید.

دیدگـاه ها

2 پاسخ به “دریافت اطلاعات و امنیت بیشتر با prepared در PDO”

  1. مدرسه مجازی ایرانیان می‌گه:

    باسلام
    لطفا لینک منبع رو فراموش نکنید.
    http://iranweblearn.com
    باتشکر از رعایت حفظ کپی رایت شما

پاسخ دهید

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

دسته بندی و خدمات

جستجو

پکیج های آموزشی

  • پکیج تصویری آموزش فارسی طراحی بنر فلش
    پکیج آموزش طراحی بنر فلش

جدید ترین ها

پست نامه ما

پست نامه پروان وب راه اندازی شد!

با عضویــــت در پسـت نامه ی ما هر روز جدیـدترین پست های سایت را در ایمیل خود داشته باشد و از آنها استفاده کنید عضویت با یه تایپ ساده ایمیلتون انجام میشه !