الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

طريقة حساب العمر مباشرةً

بدأه محمد الجرفي في 14 نوفمبر 2012 · 4 رد · 3,834 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لدي مربع نص لإدخال تاريخ الميلاد بالصيغة: ( 25-01-1410).

ومربع نص آخر للعمر : يعني بدل ما يضل يحسب العمر ويتأخر في إدخال العمر وعنده بيانات كثيرة يدخلها

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

وإذا في الامكان أن يتم اكتشاف التاريخ المدخل ميلادي أو هجري ويتم حساب العمر بناءً عليه بيكون احترافي أكثر.

أنتظر ردكم شباب .....

تم تعديل هذه المشاركة بواسطة محمد الجرفي في 14 نوفمبر 2012 في 13:34

#2

السلام عليكم

أولاً: عنوان السؤال مخالف , يرجى كتابة عنوان يدل على فحوى السؤال !

بالنسبة لما طلبت فأنت لا تحتاج لحساب العمر من خانة تاريخ الميلاد وتضعه في خانة العمر ليتم إرسالها عبر النموذج ! , فقط ستكون هناك خانة لتاريخ الميلاد ومن خلال كود php ستقوم بإستخراج العمر من تاريخ الميلاد .

* طريقة حساب العمر ببساطة ستكون :

1- عدد السنوات = السنة الحالية - سنة الميلاد

2- عدد الشهور = الشهر الحالي - شهر الميلاد

*سؤال ؟ ماذا لو كان الشهر الحالي أقل من شهر الميلاد ؟ ستكون النتيجة سالبة وبالتالي سنقوم بطرح سنة من عدد السنوات ونقوم بإضافة عدد 12 شهر لعدد الشهور (السالبة) للحصول على عدد الشهور .

3- عدد الأيام = اليوم الحالي - يوم الميلاد

* سؤال ؟ ماذا لو كان اليوم الحالي أقل من يوم الميلاد ؟ كالإجابة السابقة النتيجة سالبة ونطبق نفس الطريقة لإيجاد عدد الأيام .

* أظن الفكرة وضحت تطبيق كود php لفعل هذا طبعاً سهل وسنستخدم دالة date التي تعيد تاريخ السرفر الحالي بالميلادي طبعاً وهو كالتالي :

$var = explode('-',$birthday); 
$y = date("Y")-(int)$var[2]; 
$m = date("m")-(int)$var[1]; 
if($m < 0) 
{ 
	$y--; 
	$m = 12+$m; 
} 

$d = date("d")-(int)$var[0]; 
if($d < 0) 
{ 
	$m--; 
	$d = 30+$d; 	
} 
echo $y." year ,".$m." months ,",$d." day ";

- التاريخ هجري طبعاً ولا أظن أن موضعنا هنا يحتاج دقة في الحسابات للعمر , ولكن تاريخ السرفر بالميلادي فيجب أن يتم تحويل التاريخ للميلادي قبل إستخدام الكود السابق , هذه فكرة من عديد من الأكواد والأفكار فقط عليك بقليل من البحث .

تم تعديل هذه المشاركة بواسطة ahmedsaoud31 في 14 نوفمبر 2012 في 12:05

1

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#3

مشكور على الرد ولكن أريد أن أجرب الطريقة

#4

السلام عليكم

اقتباس
مشكور على الرد ولكن أريد أن أجرب الطريقة
الكود في الأعلى جربه وفي إنتظارك ! , المهم أن تجرب وتعدل بنفسك

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#5

لقد حاولت بنفس فكرة الكود أعلى مع الاستفادة بكود من النت لتحويل التاريخ من الهجري إلى الميلادي بالجافا سكربت وقمت بتحويل الكود إلى php وسأرفق الملفين هنا

حيث واجتني مشكلة في ظهور العمر بشكل غير صحيح أرجوا حل المشكلة

رابط الملف الأول الذي يستخدم كود جافا سكربت والذي أخذت منه دالة التحويل من هجري إلى ميلادي: date_convert.php

رابط الملف الثاني الذي أريد أن يظهر فيه العمر ولم يظهر بشكل صحيح: date_convert2.php

مواضيع مشابهة