آلية عمل ( جديد | new )
السلام عليكم ..
لدي موقع واريد ان اضع كلمة " جديد " على المنتجات الجديدة لكي يعلم المستخدم ان هذا المنتج جديد واريد ان تذهب هذه الكلمة بعد 10 ايام
* ملاحظة : تم التصميم بالكامل لكن اريد ان يذهب هذا الكود بعد 10 ايام
كيف اقوم بذلك ؟ وماهي اللغة المناسبة لفعل ذلك ؟
الإجابة الصحيحة
السلام عليكم
لنفرض أنه يوجد لديك مصفوفة تحتوي على المنتجات بإسم products وأن تاريخ إضافة المنتج معرف بإسم created_at سيكون الكود كما يلي :
<?php
$today = new DateTime();//تاريخ اليوم
$today = date_format($today, 'Y-m-d');//غير صيغة تاريخ اليوم
foreach ($products as $product) {//حلقة على المنتجات
$createdAt = date('Y-m-d', strtotime($product->created_at . " + 10 day"));//إضافة 10 أيام على تاريخ إضافة المنتج
if($createdAt > $today){//هل تاريخ إضافة المنتج الجديد أكبر من تاريخ اليوم
echo "New Product"
}
}
يرجى ملاحظة الآتي :
- وحدنا الصيغة (format) الخاصة بتاريخ اليوم وتاريخ إضافة المنتج:
- إستخدمنا الدالة strtotime لإضافة 10 أيام لتاريخ إضافة المنتج :
strtotime($product->created_at . " + 10 day")
- شرط التحقق إذا كان تاريخ إضافة المنتج + 10 أيام أكبر من تاريخ اليوم فهذا يعني أن المنتج جديد :
تاريخ اليوم = 15-08-2018
تاريخ إضافة المنتج = 09-08-2018
تاريخ إضافة المنتج + 10 أيام = 19-08-2018
if("19-08-2018" > "15-08-2018"){
echo "New Product"
}
بالتوفيق إن شاء الله
الإجابات (2)
وش اللغات اللي تستخدمها في الموقع؟
هل تستخدم php ؟
وكيف تعرف ان المنتج جديد؟ هل فيه تاريخ اضافة للمنتج؟
ممكن تحط الكود اللي يعرض المنتجات في الصفحة؟
ما اقدر اساعدك من دون كود. لكن ابحث عن طريقة المقارنة بين التواريخ في php
وسو لك دالة تقارن بين تاريخ اضافة المنتج وتاريخ اليوم. في حال كانت النتجية اقل من عشرة ايام الدالة ترجع لك true والعكس ترجع لك false
وبعد كذا استخدم الدالة في صفحة ال html اللي تعرض المنتجات، بحيث تعرض كلمة new جنب المنتج اذا رجعت الدالة true وضبط الكلمة ب css
محمد الحربي: اللغات المستخدمة : php - javascript , نعم يوجد تاريخ إضافة المنتج
Alhoqbani: راجع التعديل
السلام عليكم
لنفرض أنه يوجد لديك مصفوفة تحتوي على المنتجات بإسم products وأن تاريخ إضافة المنتج معرف بإسم created_at سيكون الكود كما يلي :
<?php
$today = new DateTime();//تاريخ اليوم
$today = date_format($today, 'Y-m-d');//غير صيغة تاريخ اليوم
foreach ($products as $product) {//حلقة على المنتجات
$createdAt = date('Y-m-d', strtotime($product->created_at . " + 10 day"));//إضافة 10 أيام على تاريخ إضافة المنتج
if($createdAt > $today){//هل تاريخ إضافة المنتج الجديد أكبر من تاريخ اليوم
echo "New Product"
}
}
يرجى ملاحظة الآتي :
- وحدنا الصيغة (format) الخاصة بتاريخ اليوم وتاريخ إضافة المنتج:
- إستخدمنا الدالة strtotime لإضافة 10 أيام لتاريخ إضافة المنتج :
strtotime($product->created_at . " + 10 day")
- شرط التحقق إذا كان تاريخ إضافة المنتج + 10 أيام أكبر من تاريخ اليوم فهذا يعني أن المنتج جديد :
تاريخ اليوم = 15-08-2018
تاريخ إضافة المنتج = 09-08-2018
تاريخ إضافة المنتج + 10 أيام = 19-08-2018
if("19-08-2018" > "15-08-2018"){
echo "New Product"
}
بالتوفيق إن شاء الله
محمد الحربي: اشكرك ي الغالي ضبط معي :)
Abdullah Alhariri: هذا من دواعي سروري ، بالتوفيق إن شاء الله
سليمان: أحسنت
لايوجد لديك حساب في عالم البرمجة؟
تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !