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

اظهار العدد والتاريخ تلقائيا

بدأه حجازي في 26 أكتوبر 2011 · 13 رد · 798 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

يا اخواني :

أريد أن اجعل في الموقع لدي رقم العدد بحيث يكون مرتبط بالتاريخ بحيث إذا تغير التاريخ يتغير العدد

يعني : العدد 1 الاثنين 26 / 11 / 1432هـ الموافق 24 / 10 / 2011م

وغدا سوف يكون العدد 2 بمجرد ان يتغير التاريخ

طبعاً كل هذا تلقائي

أتمنى أن أجد الحل لديكم

#2

ممكن كفكرة يعني تعمل جدول للاعداد و يكون فيه ID مثلا و date كل ما تضيف تاريخ جديد فيه ال ID هيزيد واحد

او تضيف خانة للعدد في نفس الجدول الي فيه التاريخ و يكون auto increment كل ما تضيف تاريخ يزيد هو واحد

و تظهره زي ما بتظهر التاريخ بالظبط بس باختيار حقل العدد

مثلا يعني حاجة زي كدة

@My Twitter

[spacing]

EGYPT

[/spacing]

#3

صحيح عزيزي

لكن أنا اريد بأن يظهر التاريخ تلقائيا

#4

السلام عليكم

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
	<div dir="rtl">
		<?php
			// نقطة البداية: اليوم الذي نبدأ به العدد اﻷول
			$start = new DateTime("10/01/2011");

			// تاريخ اليوم في السيرفر (يتم توليده آليا)
			$today = new DateTime("now");

			// حساب الفارق بين نقطة البداية واليوم الحالي
			$interval = $today->diff($start, true);
			// تحويل الفارق الى عدد الايام
			$interval_days = $interval->format('%a');

			echo 'العدد الحالي: ';
			// فارق عدد الايام + 1 للحصول على عدد الاعداد
			$current_No = (int)$interval_days + 1;
			echo $current_No;
			echo ' بتاريخ ';
			// طباعة التاريخ الحالي
			echo $today->format('Y-m-D');
		?>

   </div>

</body>
</html>

تم تعديل هذه المشاركة بواسطة choclatboy في 26 أكتوبر 2011 في 19:01

1
#5

جزاك الله خير

عزيزي

لكن توجد مشكلة

Fatal error: Call to undefined method DateTime::diff() in dateh1.php on line 17

#6

السلام عليكم

الدالة ()DateTime::diff موجودة في PHP 5.3.0

ماهي نسخة PHP لديك؟

#7

إصدار 5.2.17

وهل ممكن اضافة اليوم والتاريخ الهجري؟ كيف

تم تعديل هذه المشاركة بواسطة حجازي في 30 أكتوبر 2011 في 13:14

#8

السلام عليكم

استخدمت طريقة اخرى ستعمل مع نسخة PHP لديك

و للتحويل للتاريخ الهجري وجدت class وقمت بتعديله قليلا

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
	<div dir="rtl">
		<?php

			// Day 1			
			$d1 = 1; $m1 = 10; $y1 = 2011;
			$date_start = mktime(0,0,0,$m1,$d1,$y1);

			// Today
			$date_now = mktime(0,0,0,date('m'),date('d'),date('y'));

			$today_number = (($date_now-$date_start) / (60*60*24)) + 1;

			// Converter
			include ('Hijri_GregorianConvert.php');
			$DateConv = new Hijri_GregorianConvert;			
			$format ='YYYY/MM/DD';

			// Array of Hijri months
			$month_hijri = array(
				1  => 'محرم',
				2  => 'صفر',
				3  => 'ربيع الأول',
				4  => 'ربيع الآخر',
				5  => 'جمادى الأولى',
				6  => 'جمادى الآخرة',
				7  => 'رجب',
				8  => 'شعبان',
				9  => 'رمضان',
				10 => 'شوال',
				11 => 'ذو القعدة',
				12 => 'ذو الحجة'
			);
			// Convert date to Hijri
			$date_hijri = $DateConv->GregorianToHijri(date('Y/m/d',$date_now),$format);

			//outputs
			echo 'العدد ';
			echo $today_number;
			echo ' بتاريخ ';
			echo $date_hijri[2].' '.$month_hijri[$date_hijri[1]].' '.$date_hijri[0];
		?>
   </div>
</body>
</html>

الكود وملف لاكلاس مع في المرففقات

sample_code.zip

1
#9

ظهرت بعض الاخطاء فيما بعد وهذا تصحيح للاسطر الاخيرة

	//outputs
	echo 'العدد ';
	echo floor($today_number);
	echo ' بتاريخ ';
	echo $date_hijri[2].' '.$month_hijri[$date_hijri[1]].' '.$date_hijri[0];
	echo 'هـ';
	echo ' الموافق ';
	echo date('Y/m/d',$date_now);
	echo 'م';

تم تعديل هذه المشاركة بواسطة choclatboy في 31 أكتوبر 2011 في 21:11

1
#10

شكرا لك عزيزي

وجعل ذلك في موازين حسناتك

لدي اضافة:

اريد أن اضيف اليوم كيف؟

#11

هل تقصد اليوم بالاحرف؟

#12

نعم عزيزي اقصد الايام بالاحرف

السبت

الاحد

الاثنين .... إلخ

وهكذا

#13

السلام عليكم

مصفوفة تحتوي على ايام الاسبوع وتبدأ باليوم 0 ويحمل القيمة ' الاحد'.

// Day of the week
  $day_week = array (
    0 => 'اﻷحد',
    1 => 'الاثنين',
    2 => 'الثلاثاء',
    3 => 'الاربعاء',
    4 => 'الخميس',
    5 => 'الجمعة',
    6 => 'السبت'
  );

للحصول على يوم الاسبوع نستعمل الدالة date التي ترجع قيمة عددية نحولها الى اليوم بالحروف

نضيف هذا السطر الى اسطر outputs

echo $day_week[date('w',$date_now)]
1
#14

شكرا لك عزيزي

بارك الله فيك

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…