للحصول على عدد السجلات التي تم إضافتها في نفس اليوم في جدول قاعدة البيانات، يجب استخدام دالة CURDATE()
بدلاً من CURRENT_DATE()
، كما أن استخدام &&
للدمج بين الشروط غير صحيح في MySQL. يجب استخدام AND
بدلاً من ذلك. إليك الكود المصحح:
php
require_once('connection.php');
$id=$_SESSION['SESS_MEMBER_ID'];
$query = mysql_query("SELECT COUNT(*) AS Unread3 FROM s_daily_reporting WHERE mem_id='$id' AND entry_time >= CURDATE()");
$data2 = mysql_fetch_array($query);
echo $sum = 8 - $data2['Unread3'];
?>
تأكد من أنك قمت بتغيير كلمة المرور واسم المستخدم لقاعدة البيانات الخاصة بك بشكل صحيح عند نشر الكود على الخادم.
-
تحقيق نسخ السطور بشرط معين في C++10/03/2024
-
فوائد واستخدامات المؤشرات في لغة C++21/02/2024
المزيد من المعلومات
بالتأكيد! يبدو أنك تستخدم PHP مع MySQL لجلب عدد السجلات التي تم إضافتها في نفس اليوم في جدول s_daily_reporting
، وتقوم بطباعة العدد الكلي للسجلات التي تم إضافتها اليوم وتقوم بعملية حسابية بها. يجب الانتباه إلى أن استخدام mysql_query
و mysql_fetch_array
تعتبر قديمة ومهجورة، ويفضل استخدام mysqli أو PDO بدلاً منها لأسباب أمان وأداء أفضل.
أيضًا، يمكنك تحسين الاستعلام الخاص بك ليكون أكثر دقة عن طريق استخدام COUNT
مع DATE
بدلاً من استخدام CURDATE()
مباشرة، وذلك لضمان أن الاستعلام يعمل بشكل صحيح بغض النظر عن تنسيق التاريخ في قاعدة البيانات. قد يكون هذا مفيدًا إذا تغير تنسيق التاريخ فيما بعد.
إليك الكود المحسن:
php
require_once('connection.php');
$id = $_SESSION['SESS_MEMBER_ID'];
$query = "SELECT COUNT(*) AS Unread3 FROM s_daily_reporting WHERE mem_id = '$id' AND DATE(entry_time) = CURDATE()";
$result = mysqli_query($connection, $query);
$row = mysqli_fetch_assoc($result);
$unreadCount = $row['Unread3'];
echo $sum = 8 - $unreadCount;
?>
يرجى استبدال connection.php
بمسار ملف الاتصال الصحيح الخاص بك.