۹۴/۶/۲۳، ۰۷:۲۵ عصر
تا این قسمت از آموزش مقدماتی کار با mysql و کدهای php، دیدیم که چگونه با دستورات مربوط به پایگاه داده در mysql، php را مدیریت کنیم، نحوه اتصال، ساخت دیتابیس، جدول و ردیف با دستور CREATE را فرا گرفتیم و اطلاعات را با INSERT INTO در پایگاه داده خود ذخیره کردیم، همچنین در آموزش قبلی به طور مختصر کلیاتی در رابطه با mysql_query گفتیم و وعده دادیم که در ادامه در این خصوص بیشتر خواهیم گفت، اکنون می خواهیم به وعده خود جامع عمل بپوشانیم و در مورد دستور SELECT FROM در MySQL صحبت کنیم.
کاربرد SELECT FROM در MySQL چیست؟
اگر خاطرتان باشد، پیش تر گفتیم که صرف ساخت دیتابیس، جدول و ردیف و وارد کردن اطلاعات در آن، تمام نیازهایمان (و شاید خیلی از نیازهایمان) را پوشش نمی دهد، با این کار، صرفا اطلاعات را دریافت می کنیم، اما اگر بخواهیم از آنها مجددا استفاده نمائیم، نیاز داریم که به کمک PHP موارد را فراخوانی کنیم، این کار در تعامل بین PHP و MySQL توسط SELECT FROM و پارامترهای آن انجام می شود که وظیفه دارد با توجه به نیاز شما و تنظیماتی که انجام داده اید، اطلاعات خاصی را از ردیف های موجود در جداول، فراخوانی کند، تا پردازش روی آنها صورت گرفته و به خروجی ارسال شوند.
شیوه نگارش (syntax) دستور SELECT FROM در MySQL
شیوه نگارش یا syntax دستور SELECT FROM در MySQL به صورت زیر است.
کاربرد SELECT FROM در MySQL چیست؟
اگر خاطرتان باشد، پیش تر گفتیم که صرف ساخت دیتابیس، جدول و ردیف و وارد کردن اطلاعات در آن، تمام نیازهایمان (و شاید خیلی از نیازهایمان) را پوشش نمی دهد، با این کار، صرفا اطلاعات را دریافت می کنیم، اما اگر بخواهیم از آنها مجددا استفاده نمائیم، نیاز داریم که به کمک PHP موارد را فراخوانی کنیم، این کار در تعامل بین PHP و MySQL توسط SELECT FROM و پارامترهای آن انجام می شود که وظیفه دارد با توجه به نیاز شما و تنظیماتی که انجام داده اید، اطلاعات خاصی را از ردیف های موجود در جداول، فراخوانی کند، تا پردازش روی آنها صورت گرفته و به خروجی ارسال شوند.
شیوه نگارش (syntax) دستور SELECT FROM در MySQL
شیوه نگارش یا syntax دستور SELECT FROM در MySQL به صورت زیر است.
*محتوای این قسمت تنها برای اعضای انجمن قابل مشاهده می باشد. *
توضیح:
- در مورد mysql_query، قبلا گفته ایم که یک تابع درونی php برای کار با پایگاه داده است و در واقع یک پُرس و جو و عملیات را بین php و mysql مدیریت می کند.
- دستور SELECT FROM با پارامترهای دیگری از جمه WHERE تکمیل می شود که در بحث های بعدی به طور مفصل در این خصوص خواهیم گفت.
- پس از اینکه یک mysql_query با SELECT FROM اجرا شد، بر اساس نوع درخواست و تنظیمات شما، مقادیری برگردانده می شود (این مقادیر می تواند اطلاعات موجود در دیتابیس یا مثلا تعداد ردیف ها و ... باشد)، برای استفاده از این مقادیر بهتر است mysql_query را با یک متغیر فراخوانی کنیم تا اطلاعات در متغیر قابل دسترسی باشد (در ادامه خواهیم دید).
پارامترهای دستور SELECT FROM در MySQL
SELECT FROM در حالت عادی و بدون وجود پارامترهای محدود کننده، معمولا تمام موارد را از یک جدول برمی گرداند، لذا برای اینکه بتوانیم به دنبال محتوای مخصوصی بگردیم، باید از پارامترهای اضافه استفاده کنیم، یکی از این پارامترها WHERE است که خود زیرمجموعه های دیگری دارد (مثلا استفاده از LIKE و علامت های <،=،> و...)، چون بحث ما به دستور SELECT FROM محدود می شود، موارد پیشرفته تر را که نیاز به دانستن مقدمات بیشتر است، به آینده موکول و در اینجا به ذکر چند مثال بسنده می کنیم.
در مثال های زیر ما با پارامترهای بیشتر، اطلاعاتی دقیق تر از پایگاه داده به دست می آوریم.
- در مورد mysql_query، قبلا گفته ایم که یک تابع درونی php برای کار با پایگاه داده است و در واقع یک پُرس و جو و عملیات را بین php و mysql مدیریت می کند.
- دستور SELECT FROM با پارامترهای دیگری از جمه WHERE تکمیل می شود که در بحث های بعدی به طور مفصل در این خصوص خواهیم گفت.
- پس از اینکه یک mysql_query با SELECT FROM اجرا شد، بر اساس نوع درخواست و تنظیمات شما، مقادیری برگردانده می شود (این مقادیر می تواند اطلاعات موجود در دیتابیس یا مثلا تعداد ردیف ها و ... باشد)، برای استفاده از این مقادیر بهتر است mysql_query را با یک متغیر فراخوانی کنیم تا اطلاعات در متغیر قابل دسترسی باشد (در ادامه خواهیم دید).
پارامترهای دستور SELECT FROM در MySQL
SELECT FROM در حالت عادی و بدون وجود پارامترهای محدود کننده، معمولا تمام موارد را از یک جدول برمی گرداند، لذا برای اینکه بتوانیم به دنبال محتوای مخصوصی بگردیم، باید از پارامترهای اضافه استفاده کنیم، یکی از این پارامترها WHERE است که خود زیرمجموعه های دیگری دارد (مثلا استفاده از LIKE و علامت های <،=،> و...)، چون بحث ما به دستور SELECT FROM محدود می شود، موارد پیشرفته تر را که نیاز به دانستن مقدمات بیشتر است، به آینده موکول و در اینجا به ذکر چند مثال بسنده می کنیم.
در مثال های زیر ما با پارامترهای بیشتر، اطلاعاتی دقیق تر از پایگاه داده به دست می آوریم.
*محتوای این قسمت تنها برای اعضای انجمن قابل مشاهده می باشد. *
توضیح:
- مقادیر در مثال های بالا کاملا فرضی هستند و صرفا برای آشنایی شما با نحوه نگارش دستورات و پارامترهای SELECT FROM تعریف شده اند.
- همانطور که می بینید برای سه متغیر فرضی name، family و age سه query متفاوت (صرفا جهت مثال) تنظیم کرده ایم.
- به پارامترهایی که بعد از قسمت WHERE آمده اند دقت کنید، در متغیر اول از مقایسه برابری (=) ستون user با مقادیر your name استفاده کرده ایم (یعنی تنها ردیف هایی انتخاب می شوند که نام کاربر your name باشد)، در متغیر دوم از LIKE و LIMIT و در متغیر سوم از علامت های کوچکتر بزرگتر به همراه ORDER BY استفاده کرده ایم (بحث تفصیلی در این خصوص را به آینده موکول می کنیم).
- ملاحظه می کنید که دستورات مربوط به mysql_query در پایگاه داده، بی شباهت به حالت معمول برنامه نویسی با php نیستند.
- دقت کنید که در ارتباط با پایگاه داده توسط php، قبل از همه چیز باید اطلاعات اتصال را فراهم کرده باشید.
نمایش اطلاعات با mysql_fetch_array
پس از اینکه اطلاعات ستون ها و ردیف های مورد نظر را به متغیر خود نسبت دادیم، باید در یک حلقه while در php با کمک تابع mysql_fetch_array، مقادیر موجود را جایگزین کرده و خروجی دهیم، یا پردازش های دیگری روی آنها صورت دهیم.
*محتوای این قسمت تنها برای اعضای انجمن قابل مشاهده می باشد. *
توضیح:
- وظیفه تابع mysql_fetch_array این است که مقادیر برگردانده شده توسط mysql_query که در یک متغیر نگهداری می شود را به صورت آرایه هایی قابل استفاده در php در آورد.
- سپس این آرایه ها با کلید ها و مقادیری در دسترس هستند که در قسمت {} درون حلقه while ملاحظه می کنید.
- در مثال بالا درون قسمت {} در حلقه while، مقادیر داخل [] در واقع همان نام ستون های موجود در پایگاه داده هستند که در هر دور حلقه while تا زمانی که مقادیری برای خروجی دادن وجود داشته باشد، تکرار می شوند.
- به طور ساده کد بالا این طور تفسیر می شود: ابتدا مقادیر query با SELECT * FROM و محدود شده با WHERE به متغیر result تعلق می گیرد، سپس mysql_fetch_array مقادیر موجود در result را به متغیر row اختصاص می دهد، در هر دور حلقه while تا زمانی که آرایه ای وجود داشته باشد (true باشد)، ردیف به ردیف (سطر به سطر) به صورت داینامیک مقادیر موجود در ستون ها با عناوین آنها جایگزین می شود و در قسمت خروجی با دستور echo چاپ می گردند.
- وظیفه تابع mysql_fetch_array این است که مقادیر برگردانده شده توسط mysql_query که در یک متغیر نگهداری می شود را به صورت آرایه هایی قابل استفاده در php در آورد.
- سپس این آرایه ها با کلید ها و مقادیری در دسترس هستند که در قسمت {} درون حلقه while ملاحظه می کنید.
- در مثال بالا درون قسمت {} در حلقه while، مقادیر داخل [] در واقع همان نام ستون های موجود در پایگاه داده هستند که در هر دور حلقه while تا زمانی که مقادیری برای خروجی دادن وجود داشته باشد، تکرار می شوند.
- به طور ساده کد بالا این طور تفسیر می شود: ابتدا مقادیر query با SELECT * FROM و محدود شده با WHERE به متغیر result تعلق می گیرد، سپس mysql_fetch_array مقادیر موجود در result را به متغیر row اختصاص می دهد، در هر دور حلقه while تا زمانی که آرایه ای وجود داشته باشد (true باشد)، ردیف به ردیف (سطر به سطر) به صورت داینامیک مقادیر موجود در ستون ها با عناوین آنها جایگزین می شود و در قسمت خروجی با دستور echo چاپ می گردند.
ثبت دامنه و فروش هاست، سامانه پیامک، طراحی سایت، خدمات شبکه
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
| دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
sms: 10004673 - 500021995
دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
| دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
sms: 10004673 - 500021995