التغطية المصورة ليوم سوالف: الجزء الأول، الجزء الأخير
الفائزون في المسابقة الأصغر لسوالف كاست

 

العودة   سوالف سوفت > قسم تطوير وبرمجة المواقع للمتقدمين > PHP
المدوّنات البحث مشاركات اليوم اجعل كافة المشاركات مقروءة

رد  
 
LinkBack أدوات الموضوع
عضو نشيط
تاريخ التسجيل: May 2007-
#1 (permalink)  
[درس] افضل طريقة واسرعها في الاستعلام من DB


اظنها افضل طريقة واسرعها في الاستعلام
اترككم مع الكود
1. الاستعلام المحدد
2.استخدام الدالة for بدل الدالة while اسرع
3.حذف الاستعلام .. Unset
4. اغلاق الاتصال وتكون اخر شي بعد كل الاستعلامات
كود PHP:
// The Fast Way of query From DB
// Auther : Bruce
// One : dont Get all fileds just that you need
   
$Mainsection mysql_query("SELECT id,title FROM qf_forum");
// Use A (For) Not (While) Because For is faster
   
for($z=1;$z <= mysql_num_rows($Mainsection);$z++) {
    
$Mainsection_info mysql_fetch_array($Mainsection);
    print 
$Mainsection_info['title']."<br />";
   }
// Delete the query if you dont needed
   
unset($Mainsection);
// Last step close your db
   
mysql_close(); 
سلام






__________________
http://developer.ws.ly
مدونتي البرمجية الخاصة
Bruce web developer
Libyan Blogger
Bruce غير متواجد حالياً   قديم 27-11-2007, 03:22 PM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: Sep 2006-
#2 (permalink)  

مشكور اخوي على الدرس

بس بقيت اسئل شلون نحط تعدد الصفحات

والسلام عليكم






__________________
ﻻ إله إﻻ الله ... محمد رسول الله ...
aln3esa@hotmail.com
مبرمج المكتبه الاسلامية
www.mktba.org
الاصدقاء غير متواجد حالياً   قديم 27-11-2007, 04:16 PM
رد مع اقتباس
عضو فعال جدا
تاريخ التسجيل: Jun 2003-
#3 (permalink)  

جميل جدا وعملي .






__________________
إميل سعودي مجاني

htaccess بكل بساطة

الشفرة الموحدة "يونِكود"

(إن من مفاسد هذه الحضارة أنها تسمي الاحتيال ذكاءً، والانحلال حرية، و"الرذيلة فناً" والاستغلال معونة) - مصطفى السباعي
jadweb.com غير متواجد حالياً   قديم 27-11-2007, 09:18 PM
رد مع اقتباس
مشرف قسمي تطوير الويب و تقنية محركات البحث
تاريخ التسجيل: Jun 2003-
#4 (permalink)  

اعتقد ان هذا اسرع بكثير

كود PHP:
// The Fast Way of query From DB
// Auther : Bruce
// One : dont Get all fileds just that you need
   
$Mainsection mysql_query("SELECT id,title FROM qf_forum");
   
   
// Get number of rows outside the for loop so you request it only once
    
$num mysql_num_rows($Mainsection)
// Use A (For) Not (While) Because For is faster
   
for($z=1;$z <= $num$z++) {
    
$Mainsection_info mysql_fetch_array($Mainsection);
    print 
$Mainsection_info['title']."<br />";
   }
// Fee mysql instead of deleting the variable
   
mysql_free_results($Mainsection);
// Last step close your db
   
mysql_close(); 






__________________
سبحان الله و بحمده .... سبحان الله العظيم

للمراسلة
b happy غير متواجد حالياً   قديم 28-11-2007, 07:03 AM
رد مع اقتباس
عضو نشيط
تاريخ التسجيل: May 2007-
#5 (permalink)  

جميل جدا اخي b happy
فكرة ممتازة
ان شاء الله يستفيد منها الجميع






__________________
http://developer.ws.ly
مدونتي البرمجية الخاصة
Bruce web developer
Libyan Blogger
Bruce غير متواجد حالياً   قديم 28-11-2007, 01:52 PM
رد مع اقتباس
Moderator
تاريخ التسجيل: Aug 2004-
#6 (permalink)  

السلام .. معليش يا جماعة .. انا عندي دليل يثبت ان الfor ليست اسرع من الwhile
BREAK the FOR VS WHILE loop war | Mgccl's Blog

هذا الرابط يشرح بالتفصيل ما هو الاسرع ... ويشرح كيف ان الfor loop ابطء من الwhile وتاخذ مساحة اكبر في الذاكرة ..

لوسمحت يا Bruce قبل ان تضع شيء تاكد من صحتها ..






__________________
هلابي افضل المواقع العربية تصميماً
انصح باستخدام ابونتو
hilaby غير متواجد حالياً   قديم 28-11-2007, 06:27 PM
رد مع اقتباس
Moderator
تاريخ التسجيل: Aug 2004-
#7 (permalink)  

ولإثبات كلامي اكثر . قمت بكتابة هذا الكود وتجربتة شخصيا
كود PHP:


<pre>
<?
$con 
mysql_connect('localhost','username','password');
mysql_select_db('db_name',$con);



$stimer explode' 'microtime() );
$stimer $stimer[1] + $stimer[0];

$result mysql_query('select * from table_name LIMIT 400');
while(
$row mysql_fetch_array($result)){
  
/* xxx */
}

$etimer explode' 'microtime() );
$etimer $etimer[1] + $etimer[0];
echo 
'While loop took: '.($while $etimer-$stimer).'ms';
echo 
'<br/>';

$stimer explode' 'microtime() );
$stimer $stimer[1] + $stimer[0];

$result mysql_query('select * from table_name LIMIT 400');
$y mysql_num_rows($result);
for(
$x 0$x $y$x++){
  
$row mysql_fetch_array($result);
  
/* xxx */
}

$etimer explode' 'microtime() );
$etimer $etimer[1] + $etimer[0];
echo 
'For loop took: '.($for $etimer-$stimer).'ms';
echo 
'<br/><br/>';

if(
$while $for){
  echo 
'So <b>for loop</b> is faster by '.($while-$for).'ms';
}
else{
  echo 
'So <b>While loop</b> is faster by '.($for-$while).'ms';
}

?>
</pre>
وامثلة للنتائج هي
كود بلغة HTML:
While loop took: 0.00167798995972ms
For loop took: 0.00359106063843ms

So While loop is faster by 0.00191307067871ms

=======================

While loop took: 0.00165200233459ms
For loop took: 0.00182318687439ms

So While loop is faster by 0.000171184539795ms

=======================

While loop took: 0.00166392326355ms
For loop took: 0.00529599189758ms

So While loop is faster by 0.00363206863403ms






__________________
هلابي افضل المواقع العربية تصميماً
انصح باستخدام ابونتو
hilaby غير متواجد حالياً   قديم 28-11-2007, 06:52 PM
رد مع اقتباس
رد


 

أدوات الموضوع

تعليمات المشاركة
لا تستطيع كتابة مواضيع
لا تستطيع كتابة ردود
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة


المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
سؤال لخبراء الفلاش: ماهى افضل طريقة لتحويل فيديو الى فلاش ؟ Mr.Mido قسم التصميم والرسومات والمونتاج 2 29-11-2007 02:55 AM
ما هي طريقة الاستعلام عن الملفات النصية Text بدلا عن قواعد البيانات moslem_tk PHP 4 13-01-2007 07:53 PM
ماهي افضل طريقة لزراعة قاعدة بيانات كبيره بالسيرفر الشخصي command إصلاح وصيانة المنتديات 21 06-09-2006 01:55 PM
وش افضل طريقة لنقل المواقع عاشق مهموم قسم تبادل خبرات الاستضافة 7 05-09-2006 10:28 PM
لدي قاعدة بيانات طلاب mysql ماهي طريقة الاستعلام topacts PHP 12 18-08-2005 04:11 AM


الساعة الآن: 03:11 PM بتوقيت المملكة العربية السعودية