ارتباط PHP با MySOL

آموزش PHP

ارتباط PHP با MySOL۲۲۳

سلام  خدمت همراهان عزیز  با آموزش زبان برنامه نویسی (HTML) همراه شما هستیم. برای اطلاعات بیشتر به مقاله ی قبل مراجعه فرمایید .

ارتباط PHP با MySOL

عنوان آموزش امروز:

ارتباط PHP با MySOL

مقدمه:

در فصل 8 با مفهوم پایگاه داده و اصطلاحات مربوط به آن آشنا شدید. معماری پایگاه داده ی وب را نیز در آن فصل دیدید. در فصل 9 با مبانی MySQL آشنا شدید.

علاوه بر این، دستورات SQL را آموختیدو در شیوه ی اجرای آن ها را درMySQL ملاحظه نمودید. بنابراین، تاکنون اطلاعاتی راجع به پایگاه داده کسب کردید که

شما را آماده کرده است تا ارتباط بین PHP و پایگاه داده ی MySQL را مورد مطالعه قرار دهید.

در این فصل به این موضوع مهم می پردازیم . قبل از آن مروری دوباره بر معماری پایگاه داده ی وب خواهیم داشت.

1) عملکرد معماری پایگاه داده ی وب :

معماری پایگاه داده ی وب شرح زیر عمل می کند:

1 مرورگر وب کاربر، صفحه خاصی را در خواست می کند.

2 وب سرور در خواست صفحه را در یافت کرده، فایل را پیدا می کند و آن را به موتور PHP می فرستند تا پردازش شود.

3 موتور PHP اسکریپت را تفسیر می کند . در داخل اسکریپت فرمانی برای ارتباط با پایگاه داده وجود دارد و پرس وجویی را اجرا می کند. PHP اتصال با سرور MySQL را باز می کند و پرس وجوی مناسبی را می فرستد.

4 سرور MySQL پرس و جوی پایگاه داده را در یافت کرده آن را پردازش می کند و نتیجه را بر می گرداند.

5 اجرای اسکریپت PHP خاتمه می یابد و نتیجه ی آن کد HTML است . کد HTML به وب سرور ارسال می گردد.

6 وب سرور، HTML را به مرورگر بر می گرداند و در آن جا، کاربر نتیجه در خواست خود را می بیند.

2) مراحل پرس و جو از پایگاه داده :

در اسکریپتی که برای دستیابی به پایگاه داده از طریق وب نوشته می شود، مراحل زیر باید انجام گیرد:

1 بررسی وفیلتر کردن داده های کاربر

2 برقراری اتصال با سرور MySQL

3انتخاب پایگاه داده ی مناسب

4 انجام پرس و جو از پایگاه داده

5 بازیابی نتایج پرس وجو

6 ارسال نتایج به کاربر

7 بستن اتصال

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

1- بررسی و فیلتر کردن داده های کاربر:

در این مرحله، معمولا بررسی می شود کاربر چه داده هایی را وارد کرده است و فضای خالی طرفین داده ها با دستور ()trime حذف می شوند.

2- اتصال با سرور MySQL

برای برقراری اتصال با سرور MySQL از تابع ()mysql_connect استفاده می شود که به صورت زیر به کار می رود:

پارامتر اول نام میزبان، پارامتر دوم نام کاربر پایگاه داده و پارامتر سوم کلمه ی عبور برای استفاده از پایگاه داده است.

نتیجه تابع در متغیر $db قرار می گیرد که از آن برای انجام پرس و جو استفاده می شود. توجه کنید این تابع بدون استفاده از این پارامترها نیز قابل استفاده است:

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

علاوه برتابع ()mysql_connect، می توان ازتابع ()mysql_pconnect نیز برای برقراری اتصال با سرور MySQL استفاده کرد:

پارامتر های این تابع مثل تابع ()mysql_connect است. توجه کنید که حرف p در تابع ()mysql_pconnect مخفف persistent به معنای دائمی است تفاوت این دو تابع در این است که وقتی تابع()mysql_close اجر می شود یا اسکریپت خاتمه می یابد، اتصالی که توسط تابع ()mysql_pconnect برقرار شده است، قطع نمی شود.

در واقع، موتور PHP اتصال با سرور MySQL را حفظ می کند. به این ترتیب، اگر با دیگر()mysql_pconnect با همین پارامترها فراخوانی شود، اتصال جدید ایجاد نمی گردد، بلکه از اتصال قبلی استفاده می کند.

نتیجه می گیریم که تابع ()mysql_pconnect در زمان اتصال به سرور MySQL صرفه جویی می کند.

اما اتصال دائمی به سرور MySQL موجب می شود اتصال های بیکار زیادی برقرار باشند. بنابراین، در استفاده از اتصال دائمی به سرور MySQL باید دقت لازم را به خرج داد. بهترین حالت استفاده از اتصال دائمی وقتی است که چندین صفحه از وب، با پارامتر های یکسانی به سرور MySQL وصل می شوند و از پایگاه داده استفاده می نمایند.

3- انتخاب پایگاه داده ی مناسب

پس از این که با سرور MySQL ارتباط برقرار کردید، باید یک پایگاه داده ی مناسب را برای کارکردن با آن انتخاب کنید برای این منظور از تابع ()mysql_select_db به صورت زیر استفاده کنید:

Dbname نام پایگاه داده است که باید باز شود و serverconnection متغیر اتصال PHP با سرور MySQL است. به عنون مثال، دستور زیر پایگاه داده ی publisher باز می کند:

اگر این تابع با موفقیت عمل کند مقدار true وگرنه مقدار false را بر می گرداند.

4- انجام پرس و جو از پایگاه داده :

انجام پرس و جو از پایگاه داده شامل بازیابی ، حذف، تغییر و اضافه کردن رکوردها به جدول و یا هر کار دیگری است که در پایگاه داده صورت می گیرد. تمام این کارها با استفاده از دستورات SQL انجام می شوند. (که در آموزش فصل نهم به طور کامل مورد بررسی قرار گرفتند.)

در تمام پرس و جوهایی که صورت می گیرد، مراحل زیر انجام می شود:

1 ایجاد رشته پرس و جو : به عنوان مثال، رشته پرس وجو برای انتخاب تمام رکوردهای جدول books به صورت زیر ساخته می شود:

2 اجرای پرس وجو : برای اجرای پرس و جو از تابع ()mysql_query به صورت زیر استفاده می شود:

query$ رشته پرس و جو و $db اتصال سرور است. اگر پرس و جو اجرا شود نتایج پرس و جو در $result قرار می گیرد و گرنه مقدار false را بر می گرداند.

5_ باز یابی نتایج پرس و جو :

همان طور که دیدید، نتیجه ی پرس وجو در متغیری مثل result$ قرار می گیرد. توابع مختلفی برای بازیابی داده ها از متغیر result$ وجود دارد.

تابع ()mysql_num_rows: این تابع مشخص می کند چند سطر(رکورد) توسط پرس و جو برگردانده شده است:

دانستن این تعداد، برای پردازش رکوردهای بازیابی شده از جدول مناسب است. به عنوان مثال، با یک حلقه for به صورت زیر، می توان متغیر $result را پردازش کرد:

تابع ()mysql_fetch_array: این تابع، با هر بار اجرا، یک سطر از نتایج را از متغیر result$ بر می گرداند و به صورت زیر به کار می رود:

row$ یک آرایه انجمنی است که کلید آن نام فیلد و مقدار آن مقدار فیلد است. دستورات زیر را ببینید:

در این حلقه تکرار، شماره isbn تمام رکوردهای حاصل در مرورگر چاپ می شود.

تابع()mysql_fetch_row : این تابع سطری از متغیر حاصل پرس و جو را بر می گرداند و در آرایه ای با اندیس عددی (آرایه شمارشی) قرار می دهد:

در این صورت، هر یک از فیلدهای رکورد به ترتیب در$row[0]  و $row[1] و غیره قرار می گیرند.

تابع mysql_fetch_object(): این تابع، سطری از نتایج را در یک شی قرار می دهد و به صورت زیر بکار می رود:

در این صورت ، هر یک از فیلدهای این سطر به صورت $row -> author , $row -> title, $row-> isbn و غیره قابل دستیابی است.

تابع mysql_result() : توابعی که تاکنون مطالعه کردیم > هر بار سطری از نتایج را بر می گردانند ، ولی این تابع هر بار فیلدی را بر می گرداند. کاربرد این تابع به صورت زیر است:

$i شماره سطر و $num شماره فیلدی است که باید بازیابی شو و در متغیر $field قرار گیرد. در شکل دیگر آن ، به جای شماره  فیلد می توان از نام فیلد یا ستون استفاده کرد. دستورات زیر یکسان هستند:

6_ بستن اتصال

پس از این که کارتان با پایگاه داده تمام شد باید اتصال با سرور را قطع کنید . برای این منظور از تابع  mysql_close() به صورت زیر استفاده کنید:

اگر این تابع با موفقیت عمل کند مقدار true وگرنه مقدار false را بر می گرداند.

 

<p title=”introduction”>   this is the first      </p>

با اجرای این دستور هر وقت علامت ماوس بر روی این پاراگراف قرار گرفت ، متن کمکی  introduction ظاهر می شود.

برگرفته از :

کتاب راهنمای جامع (HTML, BHTML, XML)

دکتر عین الله جعفر نژاد قمی

پاسخ به سوال دوستان :

شاید تاکنون به این فکر کرده باشین که چرا باید برای کسب و کار خود وبسایت داشته باشین ؟

دلیل اینکه می‌گوییم باید سایت داشته باشید این آمار است. توجه کنید که ۸۱٪ از افراد قبل از

تصمیم گیری در مورد خرید و فروش در یک کسب وکار یا خدمات، در اینترنت تحقیق می کنند.

یعنی ۲۵.۹۲ میلیون نفر هستند که مشاغل را به صورت آنلاین جستجو می کنند. با این وجود ۴۶% کسب و کارها فکر می‌کنند نیاز به وب سایت ندارند.

توجه داشته باشید که جهان به سمت دیجیتالی شدن پیش می‌رود و نداشتن وب سایت

برای یک شرکت یا هر کسب و کاری، به منزلۀ جا ماندن از گردونۀ روزگار است.

برای اطلاعات بیشتر با همکاران ما در شرکت آراز پردازش در ارتباط باشید

آدرس ایمیل:  info@arazpardazesh.com

اینستاگرام شرکت:   https://instagram.com/araz_pardazesh_kla

تماس با ما:     https://arazpardazesh.com/contact

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

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

19 + 20 =