
انواع داده در MySQL
71 بازدید
همانطور که اطلاع دارید توابع mysqli و کلاس PDO و MYSQLI، جایگزین MySQL شده است . در نسخه های php ورژن ۵٫۶ به بعد با خطای deprecated مواجه می شوید و کاملا توصیه میشود که استفاده نکنید و در php ورژن ۷ نیز به طور کامل این توابع حذف شده است و با خطای undefined function مواجه می شوید.
برای آشنایی با انواع خطاها در php کلیک کنید
در برنامه ها و کدهایی که خواهید نوشت باید این موضوع را لحاظ کنید تا از نسخه های جدید PHP مثل ۷ بتوانید به راحتی استفاده کنید. به علاوه باید برنامه های قبلی را که نوشته اید هم بروز کنید . در مقاله استفاده از MySQLi به جای MySQL در PHP چند مورد از کدهای MySQL و معادل اونها در MySQLi رو خواهیم دید.
همانطور که می دانید در نسخه قبلی(ماژول MySQL) از این کد برای اتصال به MySQL استفاده می کردیم:
1 |
mysql_connect('localhost', 'user', 'password'); |
و حالا باید با کد زیر جایگزین شود:
1 |
$con = mysqli_connect('localhost', 'user', 'password'); |
در کد جدید بعد از اتصال صحیح به سرور MySQL ،کلید مربوط به اتصال ایجاد شده و در متغیر $con
ذخیره می شود.این متغیر مهم است و در ادامه از آن استفاده خواهید کرد.
انتخاب دیتابیس در روش قدیمی با این کد انجام می شد:
1 |
mysql_select_db('database'); |
و در روش جدید با این کد جایگزین شده است:
1 |
mysqli_select_db($con, 'database'); |
همانطور که می بینید متغیری که حاوی کلید اتصال است یعنی $con
اینجا باید به عنوان پارامتر اول پاس داده شود.در ضمن می توانید از این دستور استفاده نکنید و اسم دیتابیس را به عنوان پارامتر چهارم به تابع بالا یعنی mysqli_connect
پاس دهید.
اگر قصد ندارید از تابع mysqli_select_db برای مشخص کردن نام دیتابیس استفاده کنید حتما نام دیتابیس را به عنوان پارامتر چهارم به تابع mysqli_connect پاس بدید
1 |
$con = mysqli_connect('localhost', 'user', 'password','dbname'); |
اجرای کوئری قبلا به این شکل انجام می شد:
1 |
$query = mysql_query('select * from users'); |
و حالا به این شکل تغییر کرده است:
1 |
$query = mysqli_query($con, 'select * from users'); |
همانطور که می دانید داده ای که تابع بالا برمی گرداند مستقیما قابل نمایش نیست و باید آن را یک مرحله دیگر فراوری کنیم که این کار با تابع mysql_fetch_assoc
قبلا انجام می شد :
1 2 3 4 |
while($rows = mysql_fetch_assoc($query)) { echo 'Name is :' . $row['name'] ; } |
و حالا کد بالا به این شکل باید تغییر کند:
1 2 3 4 |
while($rows = mysqli_fetch_assoc($query)) { echo 'Name is :' . $row['name'] ; } |
هر مشکلی در پیاده سازی کد ها داشتید . از قسمت نظرات با ما در ارتباط باشید , سریعا پاسخگوی سوالات شما هستیم .
موفق و پیروز باشید
دیدگاه کاربران