ابسط مثال .. والاكثر شيوعا .. مثلا
لو عندك اخبار .. وفي صفحة الخبر نفسه تريد ان تقوم بعرض اسم القسم والرابط ..
الطريقة التقليدية :
كود PHP:
$sql = mysql_query("select * from news where news_id = '$id' ");
$row = mysql_fetch_array($sql);
mysql_query("select cat_name from cats where cat_id = '$row[cat_id]' ");
هنا ، يوجد نقطتين :
1- استخدمنا استعلامين
2- استخدمنا mysql_fetch_array والتي تقوم بارجاع القيم على شكل مصفوفتين واحدة associative ( نصية او مفاتيح المصفوفة تكون باسماء الحقول ) واخرى تكون بالارقام 0 1 2
<< يمكنك التأكد او معاينة الوضع ب print_r او var_dump
والاصح :
كود PHP:
$sql = mysql_query("select news.*, cats.cat_name from news, cats where news_id = '$id' AND news.cat_id = cats.cat_id ");
$row = mysql_fetch_assoc($sql);
1- صار استعلام واحد
2- استخدمنا mysql_fetch_assoc والتي تقوم بارجاع مصفوفة واحدة مفاتيحها هي اسماء الحقول
كذلك يمكن ان تقوي نفسك من خلال القراءة في ال inner join و outer join ، حيث انها تقوم بزيادة سرعة واداء الاستعلام بشكل ملحوظ ..
تحياتي