خواندن اطلاعات از پایگاه داده mysql با php

توی پست ” آموزش ارتباط با پایگاه داده mysql در php ” نحوه برقراری ارتباط با پایگاه داده mysql و اجرای دستورات sql رو توضیح دادم ، توصیه می کنم که ابتدا به این پست یک نگاه بندازید.

در این آموزش فرض رو بر این بگیرید که یک پایگاه داده با نام test داریم که دارای یک جدول با نام mytable هست و این جدول ۳ فیلد با نام های name ، id و email دارد.
برای خواندن اطلاعات از پایگاه داده ابتدا شما باید یک دستور sql بنویسید ، در زبان sql برای خواندن اطلاعات از پایگاه داده از دستور select استفاده می شود.

; شرط WHERE نام جدول FROM نام فیلدهای مورد نظر SELECT

بعد از دستور select باید نام فیلدهایی که می خواهید انتخاب کنید رو بنویسید و اگر قصد انتخاب همه فیلدها رو دارید می تونید از کاراکتر * استفاده کنید .
همچنین برای انتخاب اطلاعات یک قسمت از جدول باید از دستور where استفاده کنید و بعد از آن شرط مورد نظرتون رو بنویسید .

SELECT * FROM mytable WHERE id >10;
SELECT name,email FROM mytable;

ابتدا با پایگاه داده ارتباط برقرار می کنیم و سپسس دیتابیس خودمون رو انتخاب می کنیم .

$con=mysql_connect('localhost','root',' ');
mysql_select_db('test',$con);

سپس در داخل متغیر query کوئری خود رو مینویسیم و با استفاده از mysql_query آن را اجرا می کنیم.

$query="SELECT * FROM mytable";
$select=mysql_query($query);

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

mysql_fetch_row : این تابع اطلاعات انتخاب شده رو به صورت یک آرایه عددی بر می گرداند.
mysql_fetch_assoc : این تابع اطلاعات انتخاب شده رو به صورت یک آرایه انجمنی بر می گرداند.
mysql_fetch_array : آرایه ای را بر می گرداند که هم به صورت انجمنی است و هم عددی .
mysql_fetch_object : این تابع هم اطلاعات انتخاب شده رو به صورت یک شی بر می گرداند .

هر چهار تابع بالا نتیجه کوئری اجرا شده( متغیر select ) رو به عنوان پارامتر دریافت می کنند.

while($row=mysql_fetch_array($select)){
echo $row['id'].' - '.$row['name'].' - '.$row['email'].'<br>';
}

در این جا از یک حلقه while استفاده کردیم و این حلقه تا زمانی که متغیر row دارای مقدار باشد اجرا می شود.
اگر از تابع mysql_fetch_object استفاده کنید برای دسترسی به اطلاعات باید به شکل زیر عمل نمایید

while($row=mysql_fetch_object($select)){
echo $row->id.' - '.$row->name.' - '.$row->email.'<br>';
}

در آخر هم ارتباط ایجاد شده با پایگاه داده را قطع می کنیم.

mysql_close($con);

کد کامل :

$con=mysql_connect('localhost','root',' ');
mysql_select_db('test',$con);
$query="SELECT * FROM mytable";
$select=mysql_query($query);
while($row=mysql_fetch_array($select)){
echo $row['id'].' - '.$row['name'].' - '.$row['email'].'<br>';
}
mysql_close($con);

تا كنون ۴ نظر برای اين پست ثبت شده است


  1. ashkan گقته :

    با سلام خدمت استاد گرامی !
    من ۲۰ روزه دارم بکوب در مورد php و mysql تحقیق میکنم تاشاید با یاد گرفتن اونها بتونم سایتمو خودم بسازم ولی با اینکه زبان php را یاد گرفتم اما هرکاری میکنم نمی توانم یک فرم ثبت نام بسازم !!یعنی مشکل اصلی من تو mysql هستش !! یعنی نمودنم که وقتی در phpmyadmin تیبل و دیتا بیس رو طراحی کردیم و save کردیم کار تموم میشه ؟؟ پس این فایل .sql چی هست ؟؟

    ۲۱ تیر ۱۳۸۸ در ۳:۳۳ ب.ظ

  2. پیام گقته :

    سلام دوست عزیز
    شما باید اول یک دیتابیس داخل phpmyadmin بسازید بعد داخل دیتابیستون یک جدول برای کاربرها بسازید که یوزر و پسوردش و بقیه اطلاعاتش رو داخل اون ذخیره کنید . وقتی اطلاعات کاربر رو ذخیره کردی از طریق php به mysql وصل میشی و بعد اطلاعاتی که نیاز داری رو می خونی .
    برای اجرای پی اچ پی و mysql از wamp استفاده کن که راحت تره .

    یا علی
    موفق باشید

    ۲۱ تیر ۱۳۸۸ در ۴:۴۶ ب.ظ

  3. میلاد گقته :

    سلام
    تشکر از زحمتتون. لطفا درباره ی نوشتن و سیو کردن روی mysql توضیح بدین. خوندن که آسونه.

    ۲۱ مهر ۱۳۸۸ در ۵:۰۰ ب.ظ

  4. افشین گقته :

    سلام
    واقعا عالی بود
    به من خیلی کمک کرد
    مرسی

    ۳ دی ۱۳۸۸ در ۵:۰۴ ب.ظ