اذهب إلى المحتوى
  • 0

استخراج عدد المدخلات بالداتابيز mysql

محمد الاهلي

السؤال

عذرا على اسئلتي البسيطة 

عندي جدول اسمه customer مثلا به 20 عميل

عاوز الامر اللي يقولي العدد ده 

يعني اكتب مثلا عدد العملاء و جنبة الرقم المسجل بالداتابيز

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0
بتاريخ 33 دقائق مضت قال محمد الاهلي:

اشكركم جدا

كتبت الكود بالشكل ده و اداني خطأ ، نتعلم من حضراتكم خطأي فين


<?php
$client_number = "select count(id) as client_number from clients ";
$result = mysql_query($client_number);
echo $result ;
?>

 

أقترح عليك استخدام mysqli  انتبه لحرف i في نهاية التعليمة حيث أنها النسخة المحدثة من mysql في php واستخدامها أفضل.

<?php
$mysqli = new mysqli("localhost","my_user","my_password","my_db");

if ($mysqli -> connect_errno) {
  echo "Failed to connect to MySQL: " . $mysqli -> connect_error;
  exit();
}

$sql = "SELECT Lastname, Age FROM Persons ORDER BY Lastname";

if ($result = $mysqli -> query($sql)) {
  while ($row = $result -> fetch_row()) {
    echo $row[0]. " " . $row[1];
  }
  $result -> free_result();
}

$mysqli -> close();
?>

وهذا مثال لاستخدامها حيث يتوجب الاتصال بقاعدة البيانات ثم التأكد من عدم وجود خطأ في الاتصال.

تجهيز الاستعلام و تنفيذه وثم طباعة النتائج

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

يمكنك استخدام الدالة Count والتي تعيد لك مجموع السجلات في جدول ما كالتالي:

SELECT COUNT(customer_id) AS NumberOfCustomers FROM customers; 

حيث يتم هنا عدّ المفاتيح الفريدة الموجودة ضمن الجدول (وبذلك يتم عدّ السجلات) ونقوم بإسنادها إلى متغيّر باسم: NumberOfCustomers ونحصل  على النتيجة كالتالي:

NumberOfCustomers 20

ويمكنك أيضاً إضافة الشروط لها تبعاً للمطلوب مثل: إعادة مجموع عدد العملاء الذين يحققون شرط معيّن.

على سبيل المثال: عدد العملاء الذين أعمارهم أكبر من 18:

Select COUNT(customer_id) AS NumberOfCustomers from customers where age > 18;

ملاحظة: لماذا اخترنا حقل المفتاح الفريد COUNT(customer_id) بدلاً من أي حقل آخر؟ لأن دالة COUNT لا تقوم بعدّ القيم الفارغة NULL، وبالتالي في حال اخترت حقل آخر ضمن الجدول وكانت قيمته في سجل معيّن NULL لن يتم عدّه.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

لا مشكلة في حال كانت أسئلتك بسيطة المهم أن تتعلم منها.

نريد إعادة عدد السجلات، نستخدم الدالة count (يمكنك تمرير المعرف id بدل النجمة لكن لا أعلم كيف قمت بكتابة الاسم لديك في الجدول) ستعطي نفس النتيجة و أداء أفضل قليلا في حالة سجلات كثيرة (* تقوم بعد جميع الحقول أما في حال تحديد عمود وحيد يكون أفضل - لتقليل العمليات الغير ضرورية).

الاسم المستعار الذي يظهر مقابل القيمة هو customers_Number

select count(*) as customers_Number from customer;

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

مرحبا @محمد الاهلي
يوجد دالة تسمي count داخل sql هي مسئوله عن جلب العدد الكلي للجدول أو column معين .
 

select count(*) as customer_count from customer ;

اذا كان لديك column يسمي id أو primary key أي كان اسمه أفضل انت تقوم باستخدمه لسرعة query لأن معظم DBMS (مثل MySql أو PostgreSQL ) ذكية تقوم بإضافة index علي  primary key هذا يحسن من سرعة تنفيذ query 

select count(id) as customer_count from customer ;

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

اشكركم جدا

كتبت الكود بالشكل ده و اداني خطأ ، نتعلم من حضراتكم خطأي فين

<?php
$client_number = "select count(id) as client_number from clients ";
$result = mysql_query($client_number);
echo $result ;
?>

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
Fatal error: Uncaught Error: Call to undefined function mysql_query() in C:\xampp\htdocs\se\index.php:55 Stack trace: #0 {main} thrown in C:\xampp\htdocs\se\index.php on line 55

ده اللي مكتوب بسطر 55 

$result = mysql_query($client_number);

الجدول اسمه clients و زي محضرتك تفضلت هاعمله على عدد معرف ID

تم التعديل في بواسطة محمد الاهلي
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 5 دقائق مضت قال محمد الاهلي:

Fatal error: Uncaught Error: Call to undefined function mysql_query() in C:\xampp\htdocs\se\index.php:55 Stack trace: #0 {main} thrown in C:\xampp\htdocs\se\index.php on line 55

 

هل يمكنك مشاركة الملف كاملا ووضعه في المرفقات؟

شكرا لك

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

شكرا لحضرتك جدا 

نجحت التجربة بالكود الخاص بحضرتك و نجحت ايضا بتعديله بازالة الجملة الشرطية و دالة while

<?php
$client_number = "SELECT COUNT(id) FROM clients ";
$result = $conn -> query($client_number);
$row = $result -> fetch_row() ;
echo $row[0];
$conn -> close();
?>

سؤالي ، ليه حضرتك استخدمت جملة شرطية في المثال بتاعك ، عذرا فانا مبتدئ و بقول يا هادي

تم التعديل في بواسطة محمد الاهلي
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 34 دقائق مضت قال محمد الاهلي:

سؤالي ، ليه حضرتك استخدمت جملة شرطية في المثال بتاعك ، عذرا فانا مبتدئ و بقول يا هادي

مرحبا محمد،

المثال الذي أدرجته هو مثال عام، لتوضيح بنية صفحة الاتصال باستخدام mysqli مع شرط التحقق من نجاح الاتصال.

الشرط الثاني للتأكد من وجود بيانات و في المشاريع الحقيقية يتوجب إضافته لنتفادى حصول أخطاء وعدم وجود بيانات.

وجود المتغير ضمن جسم الحلقة يختبر الشرط مباشرة لأن هذه المتغيرات هي أغراض وعند اختبارها في شرط تعيد قيمة true في حال احتوت بيانات، وفي حال كانت فارغة يعيد null أي false وهي اسلوب يختصر بعض الأسطر البرمجية.

للتعلم عن باقِ دوال mysqli يمكنك تصفح موسوعة حسوب أو موقع w3schools.

بالتوفيق

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...