لديك حساب بالفعل؟ دخول
دخول  سجل الأن 
كيفية استخدام mysql_num_rows
السلام عليكم ورحمة الله وبركاته
استخدم الأمر mysql_num_rows لطباعة التعليقات من جدول بقاعدة البيانات ووضعت شرط لطباعة هذه التعليقات إذا ما كان عددها أكبر من صفر
ولكن عند الطباعه يكون الناتج المطبوع هو كل التعليقات بالجدول - تعليث واحد ولا أدرى ما الذى يجعل هذا التعليق لا يظهر
هذا هو الكود إن أحببتم رؤيته
$showcomments = mysql_query("SELECT * FROM pages_comments ORDER BY pc_id DESC") or die ("<center><h3>MySQL Error</h3></center>");
$rowcomments = mysql_fetch_object($showcomments);
// إذاكان عدد الصفوف المستعلم عنها أكبر من الصفر
if (mysql_num_rows($showcomments) > 0){
echo "
<h3>تعليقات الزوار</h3>
<table width='100%' align='center' cellpadding='0' cellspacing='0'>
";
// حلقة جلب صفوف البيانات من القاعده
while($rowcomments = mysql_fetch_object($showcomments)){
echo "
<tr>
<td class='tb2'><span class='author'>كتبت بواسطة ".$rowcomments->pc_name."</span><span class='date'>بتاريخ ".$rowcomments->pc_date."</span></td>
</tr>
<tr>
<td class='tb1'><p class='comment'>".$rowcomments->pc_text."<p></td>
</tr>
";}

echo"
</table>
";}


فما الخطأ عندى وما الذى يجعل الصفوف الموجوده بالجدول كلها تظهر ما عدا واحد منهم؟
وجزاكم الله خيرا
تاريخ البداية: 2 / فبراير / 2012 الساعة 14:49 اخر نشاط: 3 / فبراير / 2012 الساعة 9:45 php mysql
3 إجابات
mysql_fetch_array()
تعطيك البينات بمصفوفة رقمية و باسم الحقل تستطيع الوصول للبينات عن طريق هذا الكود $ROW[0] او $ROW['ID']
mysql_fetch_assoc()
ترجعلك مصفوفة باسم الحقل فقط مثلاً $row['id'] ولن تنفع اذا استعملتها هكذا $row[0]
mysql_fetch_object()

ترجعلك البينات على شكل كائن وليس مصفوفة يمكنك الوصول الى البينات بهذه الطريقة
$row->title

قرأت في احد المقالات ان mysql_fetch_assoc()
تستخدم نصف الذاكرة التي تستخدمها mysql_fetch_array()

بواسطة: Amer
منذ: 3 / فبراير / 2012 الساعة 9:35

تعديل: MacOS
منذ: 3 / فبراير / 2012 الساعة 9:44

معلومات قيمة .. بارك الله فيك
3 / فبراير / 2012 الساعة 9:45

السلام عليكم
عفوا انا فهمت منك انك في واحد من التعليقات لايظهر
تقريبا لانه حضرتك كاتب هذه مرتين
mysql_fetch_object($showcomments);
المرة الاولى قبل while هذه بتقرا اول سطر وبعدين تعاود تقرا تاني فيطلع اقل الغي
mysql_fetch_object($showcomments);
قبل while واجعلها في while كما مكتوبة

بواسطة: Arwa
منذ: 2 / فبراير / 2012 الساعة 15:2

تعديل: MacOS
منذ: 2 / فبراير / 2012 الساعة 15:11

هذا صحيح جزاكم الله خيرا
2 / فبراير / 2012 الساعة 15:10

هذا هو السبب بالفعل .. تحياتى
2 / فبراير / 2012 الساعة 15:12

جربها هاكذا
$query = mysql_query("SELECT * FROM pages_comments ORDER BY pc_id DESC") or die ("<center><h3>MySQL Error</h3></center>");

if (mysql_num_rows($query) > 0){
echo "<h3>تعليقات الزوار</h3><table width='100%' align='center' cellpadding='0' cellspacing='0'>";
// حلقة جلب صفوف البيانات من القاعده
    while($row = mysql_fetch_array($query, MYSQL_ASSOC)){ 
        echo "<tr>
        <td class='tb2'><span class='author'>كتبت بواسطة ".$row['pc_name']."</span><span class='date'>بتاريخ ".$row['pc_date']."</span></td>
        </tr>
        <tr>
        <td class='tb1'><p class='comment'>".$row['pc_text']."<p></td>
        </tr>";
    }

echo"</table>";
}

بواسطة: molhm
منذ: 2 / فبراير / 2012 الساعة 14:57

تعديل: MacOS
منذ: 2 / فبراير / 2012 الساعة 15:12

النتيجه
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
2 / فبراير / 2012 الساعة 15:6

الاخ ملهم كان لديه خطأ فى الكتابة وتم تصليحه
2 / فبراير / 2012 الساعة 15:12

أهلا بك أخ MacOs عرفت أنى سألقى ردك جزاك الله خيرا لا تنسى أنى مبتدىء هههه فأنتم من شجعنى على بداية تعلم هذه اللغه الجميله وبصفتك دخلت موضوعى فدعنى أسأل
ما الفرق بين
mysql_fetch_array()
mysql_fetch_assoc()
mysql_fetch_object()
وما الأفضل فى الاستخدام؟؟؟؟؟
وشكرا لك
2 / فبراير / 2012 الساعة 15:18

أنشر اجابتك

xهل تريد الاجابة عن هذا السؤال؟ من فضلك سجل دخول او اشترك لتتمكن من الاجابة