نحوه استفاده از MySQLi به جای MySQL در PHP

همانطور که اطلاع دارید کم کم ماژول MySQLi که نسخه بهبود یافته MySQL است ، جایگزین MySQL می شود و در برنامه ها و کدهایی که خواهید نوشت باید این موضوع را لحاظ کنید تا از نسخه های جدید PHP مثل ۷ بتوانید به راحتی استفاده کنید. به علاوه باید برنامه های قبلی را  که نوشته اید هم بروز کنید . در این مقاله چند مورد از کدهای MySQL و معادل اونها در MySQLi رو خواهیم دید.

اتصال به MySQL Server در PHP

همانطور که می دانید در نسخه قبلی(ماژول MySQL) از این کد برای اتصال به MySQL استفاده می کردیم:

mysql_connect('localhost', 'user', 'password');

و حالا باید با کد زیر جایگزین شود:

$con = mysqli_connect('localhost', 'user', 'password');

در کد جدید بعد از اتصال صحیح به سرور MySQL ،کلید مربوط به اتصال ایجاد شده و در متغیر $con ذخیره می شود.این متغیر مهم است و در ادامه از آن استفاده خواهید کرد.

 

انتخاب Database

انتخاب دیتابیس در روش قدیمی با این کد انجام می شد:

mysql_select_db('database');

و در روش جدید با این کد جایگزین شده است:

mysqli_select_db($con, 'database');

همانطور که می بینید متغیری که حاوی کلید اتصال است یعنی $con اینجا باید به عنوان پارامتر اول پاس داده شود.در ضمن می توانید از این دستور استفاده نکنید و اسم دیتابیس را به عنوان پارامتر چهارم به تابع بالا یعنی mysqli_connect پاس دهید.

 

اجرای Query

اجرای کوئری قبلا به این شکل انجام می شد:

$query = mysql_query('select * from users');

و حالا به این شکل تغییر کرده است:

$query = mysqli_query($con, 'select * from users');

 

دریافت اطلاعات و نمایش در حلقه While

همانطور که می دانید داده ای که تابع بالا برمی گرداند مستقیما قابل نمایش نیست و باید آن را یک مرحله دیگر فراوری کنیم که این کار با تابع mysql_fetch_assoc قبلا انجام می شد :

while($rows = mysql_fetch_assoc($query))
{
    echo 'Name is :' . $row['name'] ;
}

و حالا کد بالا به این شکل باید تغییر کند:

while($rows = mysqli_fetch_assoc($query))
{
    echo 'Name is :' . $row['name'] ;
}

 

در همین رابطه :   چگونه یک وبلاگ شی گرا،بنویسیم؟!

در این مطلب به طور ساده نحوه ارتقا ماژول MySQL در PHP به ماژول MySQLi را با دستورات پرکاربرد توضیح دادیم .اگر سوالی داشتید لطفا در بخش نظرات بپرسید

دسته بندی : PHP

10 نظر

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

  2. سلام من کل یک پروژه رو به زبان php با استفاده از mysql نوشتم و حالا باید تا ۵ روز دیگ پروژه رو تحویل بدم تازه فهمیدم باید همه کدا رو به mysqly تبدیل کنم میشه راهنماییم کنید چیکار بکنم من تازه کارم و زیاد وارد نیستم الانم خیلی نگران پروژه هستم واقعا نمیدونم چیکار باید بکنم

    1. سلام . من جای شما بودم پروژه را به همین صورت تحویل می دادم چون مهم اینه فعلا درست کار کنه که می کنه . بعد سر فرصت تغییرات لازم رو انجام می دادم و سایت رو دوباره بروزرسانی می کردم چون تبدیل mysql به mysqli به php مربوطه و نیازی به تغییرات در دیتابیس و جدول ها و اطلاعات نداره. فقط از نسخه php سرور مطمئن بشید چون در نسخه های جدید ماژول mysql ممکنه کار نکنه
      در ضمن پیشنهاد می کنم از فریم ورک هایی مثل لاراول استفاده کنید تا این مشکلات پیش نیاد

  3. درود ب شما و سایت خوبتون ک واقعا عالیه آقا اومدم ی تشکر بکنم بابت این مطالب توپتون ک حرف ندارن دقیق و کامل هستند واقعا ممون اگر امکانش هست در رابطه با mysqli مطالب بیشتری بزارید عالی میشه چون واقعا خیلی گویا هستند
    با تشکر

  4. سلام …. سایتتون خیلی سنگینه …. پدر ادمو در میاره ….. سرعت من پایین نیست …. تست کردم … سایتتون خیلی کند شده

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

پاسخ دهید

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

More in فونت
فونت های حرفه ای رایگان ۲۰۱۲

اکنون داریم به نیمه سال نزدیک می شویم و به احتمال زیاد شما دنبال فونت های جدید و زیبا می...

Close