علاوه بر افزودن مقادیر ، ردیف ها و رکوردها به دیتابیس ها و جدول ها می خواهیم نحوه خواندن مقادیر را بررسی کنیم.

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

خواندن اطلاعات به طور کلی با استفاده از دستور SELECT انجام می پذیرد. در این جا به بررسی خود دستور SELECT می پردازیم و در قسمت های بعدی به سفارشی کردن درخواست ها. همانطور که در گفتار می گوییم “ردیف هایی را از جدول انتخاب کن“، در ایجاد درخواست های دیتابیس هم به همین گونه عمل می کنیم. پس شکل کلی استفاده از این دستور به شکل زیر می باشد:

 

با توجه به دستور بالا columnName(s) نام ستون یا ستون هایی از جدول موردنظر می باشد که می خواهند انتخاب شوند. و در قسمت بعدی tableName را داریم که جدول منباء را تعیین می کند.اگر بخواهیم تمام ستون های یک جدول را انتخاب کنیم از کاراکتر * استفاده می کنیم.

این انتخاب ما ممکن است یک یا چندین ردیف را انتخاب کند و هرردیف شامل چندین فیلد (ستون) می باشد پس باید راهی برای خواندن هرفیلد در هر ردیف به طور مشخص وجود داشته باشد. برای این کار از تابع mysqli_fetch_array() استفاده می شود. این تابع مقدار بازگشتی از دستور SELECT را به عنوان پارامتر دریافت می کند و درهربار اجرای این دستور یک ردیف را درون یک آرایه قرار می دهد. شکل کلی استفاده از این تابع به شکل زیر است:

 

مثال

در جدول persons در دیتابیس test_db چند ردیف دیگر اضافه کردیم. حالا می خواهیم تمام رکوردهای این جدول را در خروجی چاپ کنیم. کد برنامه ی ما به شکل زیر است:

 

خروجی:

مثالی از استفاده دستور SELECT در انتخاب رکوردهای جداول دیتابیس

خروجی

همانطور که مشاهده کردید ابتدا با دستور SELECT name, age FROM persons ستون هایی از جدول persons را انتخاب کردیم. سپس آن را به تابع mysqli_query() ارسال کردیم و خروجی را در متغیر $result ذخیره کردیم. بعد از آن با استفاده از حلقه while و تابع mysqli_fetch_array()، در هربار اجرای حلقه یک ردیف از جدول را انتخاب کرده و درون متغیر $persons به شکل آرایه ذخیره کردیم. دسترسی به هرفیلد (ستون) با استفاده از آرایه $persons و مقدار نام ستون برای هرفیلد امکان پذیر می باشد.

در حلقه While در هربار اجرای حلقه نام فرد همراه با سن او چاپ می شود.